Can an <option> tag be dynamically modified?

Can the following be done:
An html page contains radio buttons and an option tag (combo box).  If you click one of the radio buttons, a javascript is called that will modify the content (the pulldown options) in the option tag dynamically without reloading a new page.  Can it be done? if so, what is the code (in JVScript or html) that will modify the content of the option dynamically.
matalaAsked:
Who is Participating?
 
mouattsConnect With a Mentor Commented:
Firstly it should  option not options.
Secondly to remove all element from the list you can use option.length=0
Thus you only need to put the options that need to be there and don't need 'empty' ones to fill the gaps.
0
 
PBallCommented:
Yes, but it might not work on some older browsers like IE3 (I think)

<select name=selAnswers>
<option value='a'>16 meters
<option value='b'>12 meters
<option value='c'>14 meters
<option value='d'>other

<script>
document.selAnswer.options[0] = new Option('a','New York')
document.selAnswer.options[1] = new Option('b','Chicago')
document.selAnswer.options[2] = new Option('c','Dallas')
document.selAnswer.options[3] = new Option('c','San Francisco')
</script>

Hmm..I forgot how to delete the previous options tho, hmm...
anyone?
0
 
martinagCommented:
The list has got to be filled with x empty options where x is the number of options that will ever be used.
Then, you dynamically assign text and value
<SELECT>
<OPTION>
<OPTION>
<OPTION>
</SELECT>
[...]
// A list
list.options[0].value = "soccer";
list.options[0].text = "Soccer";
list.options[1].value = "basketball";
list.options[1].text = "BasketBall;
list.options[2].value = "hockey";
list.options[3].text = "Hockey";
[...]
// Another list
list.options[0].value = "y";
list.options[0].text = "Yes";
list.options[1].value = "n";
list.options[1].text = "No";
list.options[2].value = ""; // Empty, or it will be "hockey"
list.options[3].text = ""; // Empty, or it will be "Hockey"

Martin
0
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

 
martinagCommented:
When you do like PBall suggests you have to reload for the changes to be made.

Martin
0
 
martinagCommented:
Oops.
  list.options[2].value = ...
  list.options[3].text = ...
should of course be
  list.options[2].value = ..
  list.options[2].text = ...

Martin
0
 
matalaAuthor Commented:
Thanks, it works with netscape, but not with iexplorer.  How can I make it work in both.
The error in iexplorer 4.0 is "...options is not an object"
0
All Courses

From novice to tech pro — start learning today.