我有一个<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;
}
当然,它不起作用。我能做些什么来获得类似的效果?
答案 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;