Results 1 to 14 of 14

Thread: Javascript: getting selected value *RESOLVED*

  1. #1

    Thread Starter
    Frenzied Member dj4uk's Avatar
    Join Date
    Aug 2002
    Location
    Birmingham, UK Lobotomies: 3
    Posts
    1,131

    Javascript: getting selected value *RESOLVED*

    I have a select box in a form:

    <select name="score1" id="score1" onChange="scoreImage('insults_generosity', 'score1');">
    <option>-5</option>
    <option>-4</option>
    <option>-3</option>
    <option>-2</option>
    <option>-1</option>
    <option>0</option>
    <option>1</option>
    <option>2</option>
    <option>3</option>
    <option>4</option>
    <option>5</option>
    </select>

    There are the following functions:
    function MM_findObj(n, d) { //v4.0
    var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
    if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
    for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
    if(!x && document.getElementById) x=document.getElementById(n); return x;
    }

    function MM_swapImage() { //v3.0
    var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
    if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
    }

    function scoreImage(scorePrefix, formElement) {
    var imagePath = 'images/' + scorePrefix + eval('window.document.new_case_file.' + formElement + '.value') + '.gif';
    MM_swapImage(scorePrefix,'',imagePath,1);
    }

    It is supposed to swap the image with the name 'insults_generosity'. The new image is supposed be at the path: images/insults_generosity-5.gif if the selected value is -5 or images/insults_generosity1.gif if the selected value is 1. However it always swaps the image with images/insults_generosity.gif i.e. the selected value is not being concatenated into the filename.

    I've used an alert to return the selected value from this form element and it is always blank!

    What am I doing wrong?!?!?

    DJ
    Last edited by dj4uk; Nov 20th, 2003 at 05:17 AM.

  2. #2
    Frenzied Member Acidic's Avatar
    Join Date
    Sep 2003
    Location
    UK
    Posts
    1,090
    change:
    Code:
    <select name="score1" id="score1" onChange="scoreImage('insults_generosity', 'score1');">
    <option>-5</option>
    <option>-4</option>
    <option>-3</option>
    <option>-2</option>
    <option>-1</option>
    <option>0</option>
    <option>1</option>
    <option>2</option>
    <option>3</option>
    <option>4</option>
    <option>5</option>
    </select>
    to:
    Code:
    <select name="score1" id="score1" onChange="scoreImage('insults_generosity', this.value);">
    <option value="-5">-5</option>
    <option value="-4">-4</option>
    <option value="-3">-3</option>
    <option value="-2">-2</option>
    <option value="-1">-1</option>
    <option value="0">0</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    </select>
    Have I helped you? Please Rate my posts.

  3. #3

    Thread Starter
    Frenzied Member dj4uk's Avatar
    Join Date
    Aug 2002
    Location
    Birmingham, UK Lobotomies: 3
    Posts
    1,131
    Changed function to:
    function scoreImage(scorePrefix, formElementValue) {
    var imagePath = 'images/' + scorePrefix + formElementValue + '.gif';
    alert(imagePath);
    MM_swapImage(scorePrefix,'',imagePath,1);
    }

    and HTML to:
    <select name="score1" id="score1" onChange="javascript:scoreImage('insults_generosity', this.value);">
    <option>-5</option>
    <option>-4</option>
    <option>-3</option>
    <option>-2</option>
    <option>-1</option>
    <option>0</option>
    <option>1</option>
    <option>2</option>
    <option>3</option>
    <option>4</option>
    <option>5</option>
    </select>

    The alert returned still says images/insults_generosity.gif
    i.e the value is still empty.

  4. #4
    Frenzied Member Acidic's Avatar
    Join Date
    Sep 2003
    Location
    UK
    Posts
    1,090
    ok, try this. Change:
    var imagePath = 'images/' + scorePrefix + eval('window.document.new_case_file.' + formElement + '.value') + '.gif';

    to:

    var imagePath = 'images/' + scorePrefix + FormElement + '.gif';

    If that doesn't plz post the code for the whole page, then I should be able to spot it.
    Have I helped you? Please Rate my posts.

  5. #5

    Thread Starter
    Frenzied Member dj4uk's Avatar
    Join Date
    Aug 2002
    Location
    Birmingham, UK Lobotomies: 3
    Posts
    1,131
    Didn't work.

    You asked for it - see attached.

    DJ
    Attached Files Attached Files

  6. #6
    Frenzied Member Acidic's Avatar
    Join Date
    Sep 2003
    Location
    UK
    Posts
    1,090
    this made the right image load (I think)

    P.S. sorry it took a while but other needed internet
    Attached Files Attached Files
    Have I helped you? Please Rate my posts.

  7. #7

    Thread Starter
    Frenzied Member dj4uk's Avatar
    Join Date
    Aug 2002
    Location
    Birmingham, UK Lobotomies: 3
    Posts
    1,131
    I tried what you suggested and it still didn't work.

  8. #8
    Frenzied Member Acidic's Avatar
    Join Date
    Sep 2003
    Location
    UK
    Posts
    1,090
    OK, I'll post something so you can try it yourself. Here is some code that swap images that I wrote.

    Code:
    <html>
    <head>
    <title>Image swapper : Acid</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <script type="text/javascript">
    function swap_img(target,img) {
    document.getElementById(target).src = img
    }
    </script>
    </head>
    <body>
    <img src="thumb1.jpg" id="myPic"><br>
    <input type="button" value="swap with pic2.jpg" onClick="swap_img('myPic','thumb2.jpg')">
    <input type="button" value="swap with pic3.jpg" onClick="swap_img('myPic','thumb3.jpg')"><br>
    <select onChange="swap_img('myPic','thumb' + this.value)">
    	<option value="1.jpg">Picture 1</option>
    	<option value="2.jpg">Picture 2</option>
    	<option value="3.jpg">Picture 3</option>
    	<option value="4.jpg">Picture 4</option>
    </select>
    </body>
    </html>
    That should make it easier for you to do this.
    Have I helped you? Please Rate my posts.

  9. #9
    Fanatic Member davebat's Avatar
    Join Date
    Dec 2002
    Posts
    727
    how about you give your selects some values:
    you have

    Code:
    <select name="score1" id="score1" onChange="javascript:scoreImage('insults_generosity', this.value);">
    <option>-5</option>
    <option>-4</option>
    <option>-3</option>
    <option>-2</option>
    <option>-1</option>
    <option>0</option>
    <option>1</option>
    <option>2</option>
    <option>3</option>
    <option>4</option>
    <option>5</option>
    </select>
    change to

    Code:
    <select name="score1" id="score1" onChange="javascript:scoreImage('insults_generosity', this.value);">
    <option value="-5">-5</option>
    <option value="-4">--4</option>
    <option value="-3">--3</option>
    <option value="-2">-2</option>
    <option value="-1">-1</option>
    <option value="0">0</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    </select>

  10. #10

    Thread Starter
    Frenzied Member dj4uk's Avatar
    Join Date
    Aug 2002
    Location
    Birmingham, UK Lobotomies: 3
    Posts
    1,131
    Davebat - cheers mate! The values were needed - doh!

  11. #11
    Frenzied Member Acidic's Avatar
    Join Date
    Sep 2003
    Location
    UK
    Posts
    1,090
    heh, I had said exactly the same thing in my first post. Guess you have selected reading.
    Have I helped you? Please Rate my posts.

  12. #12
    Fanatic Member davebat's Avatar
    Join Date
    Dec 2002
    Posts
    727
    jealousy is not a good emotion

  13. #13
    Frenzied Member Acidic's Avatar
    Join Date
    Sep 2003
    Location
    UK
    Posts
    1,090
    sorry.
    Have I helped you? Please Rate my posts.

  14. #14

    Thread Starter
    Frenzied Member dj4uk's Avatar
    Join Date
    Aug 2002
    Location
    Birmingham, UK Lobotomies: 3
    Posts
    1,131
    Just to close this thread off - thanks to both of you for all your help!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width