Debt Consolidation - Bollywood Movie - Reduce Debt - Business Gifts - Find jobs

PDA

View Full Version : OnChange Help


Karl Evans
Apr 12th 2007, 4:37 pm
Evening,

I'm having some difficulty at the moment with a bit of javascript, I'm by no means an expert, but I'm having a go.

Right, I'm pulling some information from a database using PHP, I'm storing this in a javascript array. So it's a little like this:


var comments = new array();


Then the PHP puts the information in the array like so.


comments['1'] = "Comments Here";
comments['2'] = "Comments Here Also";


Now what I require is a function that will change the data when the corresponding option is selected in the dropdown list.


<select name="comments">
<option value="1">Change To comments['1']</option>
<option value="2">Change To comments['2']</option>
</select>


Whatever is selected needs to be displayed underneath the dropdown list.

Could anybody put me in the right direction please?

If somebody can write the function that works, I will chuck them a few quid/dollars via PayPal.

Thanks,
Karl

phper
Apr 12th 2007, 5:22 pm
Try below. Note that Array should be capitalised.


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<script type="text/javascript">
var comments = new Array();
comments[1] = "comment 1";
comments[2] = "comment 2";
</script>
</head>
<body>
<select name="comments" onchange="document.getElementById('output').innerHTML=comments[this[this.selectedIndex].value];">
<option value="1">Change To comments['1']</option>
<option value="2">Change To comments['2']</option>
</select>

<span id="output"></span>
</body>
</html>

Karl Evans
Apr 12th 2007, 5:47 pm
Thanks for the code.

However, it outputs

[object HTMLOptionElement]

Any ideas?

Thanks,
Karl

phper
Apr 12th 2007, 6:11 pm
hmm.. that's weird.
do you want to check if you copied the brackets correctly?
have you tried running just the code above? then if it's working without your php code we can move on and check your php code.

Karl Evans
Apr 12th 2007, 6:50 pm
Works perfectly now.

Thanks very much!

briansol
Apr 13th 2007, 1:30 pm
<select name="comments" onchange="document.getElementById('output').innerHTML=comments[this[this.selectedIndex].value];">

should be:

<select name="comments" onchange="document.getElementById('output').innerHTML=comments[this.options[this.selectedIndex].value];">