OnSelect等效于<option>?</option>

时间:2015-03-09 04:00:40

标签: javascript html

我有一个<select>标记,我希望它在选择一个选项时更改隐藏输入的值。 我想是用这个:

<input type=hidden value=Ineedtochangethis name=asdf>
<select><option onselect="stuff()">Option 1 is selected</option>...</select>

然后这个

function stuff() {
document.getElementsByName("asdf").value=opt1slct;
}

当然,它不起作用。我能做些什么来获得类似的效果?

2 个答案:

答案 0 :(得分:2)

please check following code:  
  <select onChange="jsFunction()" id="selectOpt">
        <option value="1" >1</option>
        <option value="2">2</option>
        <option value="3">3</option>
    </select>
    function jsFunction(){
      var myselect = document.getElementById("selectOpt");
      if(myselect.options[myselect.selectedIndex].value == 1){
          alert('hide');
      }else{
           alert('show');
      }
    }

答案 1 :(得分:1)

使用selectedIndex元素的options属性(也可能是select属性。)

<input id="yourHiddenField" type="hidden"/>
<select onchange="stuff(this);">
  <option>Option 1 is selected</option>
</select>

JavaScript:

function stuff(yourSelectElement){
  document.getElementById('yourHiddenField').value = yourSelectElement.options[yourSelectElement.selectedIndex].innerHTML;
}

如果您只想在隐藏字段中存储一个号码,请使用value标记上的option属性,如下所示:

<option value="1">Option 1 is selected</option>

然后JS改变如下:

document.getElementById('yourHiddenField').value = yourSelectElement.options[yourSelectElement.selectedIndex].value;