2011-04-15 115 views
19

我有一个下拉菜单,我无法弄清楚如何使javascript函数选择一个下拉菜单选项。我已经测试了变量的输出,它们都是正确的,但点击时它仍然不会选择该选项。这是功能和下拉菜单。使用javascript选择下拉菜单选项

功能

function formFill(a, b, c){ 
     theform.from.value = a; 
     theform.to.value = b; 
     for(var i = 0;i < document.getElementById("stateSelect").length;i++){ 
      if(document.getElementById("stateSelect").options[i].value == c){ 
       document.getElementById("stateSelect").selected = true; 
      } 
     } 
    } 

菜单项

<select id="stateSelect" name="stateSelect"> 
    <option value="none">(None)</option> 
    <option value="AL">Alabama</option> 
    <option value="AK">Alaska</option> 
+1

您不应该重复`document.getElementById(“stateSelect”)`。调用一次并将参考存储在变量中。 – RoToRa 2011-04-15 14:42:02

+0

请参阅这篇文章:http://javascriptstutorial.com/blog/selecting-dropdown-element-using-javascript-or-jquery/ – 2016-05-25 12:18:19

回答

29

更改读取行:

document.getElementById("stateSelect").selected = true;

到:

document.getElementById("stateSelect").selectedIndex = i;

12

Alt。你可以设置选择的实际选项:select.options [i] .selected = true;

... 
     var select = document.getElementById("stateSelect"); 
     for(var i = 0;i < select.options.length;i++){ 
      if(select.options[i].value == c){ 
       select.options[i].selected = true; 
      } 
     } 
... 
相关问题