【发布时间】:2013-07-13 21:14:39
【问题描述】:
我有一个 <select> 和 4 个 <option>s,我正在尝试将所选选项转换为 <input type="hidden"> 的值。
这是我的代码:
<form id="selector" name="selector" action="" method="get">
<label>Number of players: </label><select form="selector" id="selectelement">
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
</select>
<input type="hidden" id="numofplayers" />
<label> Board size: </label><input type="number" id="board_size" maxlength="2" style="max-width: 20px;" name="board_size" min="3" max="20" />
<label> Sequence to win: </label><input type="number" id="win_size" maxlength="1" style="max-width: 10px;" name="win_size" min="3" max="9" />
<input type="submit" name="submit" value="Go" />
</form>
我试过了:
function goform()
{
this.form.elements["numofplayers"].value = document.getElementById('selectelement').selectedIndex.innerHTML;
}
在表单标签中我这样做:
<form onsubmit="goform()" id="selector" name="selector" action="" method="get">
我该怎么做?
谢谢。
编辑:对不起,我解决了,显然你可以通过这样做来获得所选选项的值:
var x = document.getElementById("selectelement").value;
还是谢谢。
【问题讨论】:
-
正如您在MDN documentation 中看到的,
selectedIndex返回一个数字,而不是 HTML 元素。因此你不能使用.innerHTML。 -
我如何从索引中获得期权的价值?
-
在这种情况下您可以只使用
.value。如果option元素没有value属性,则将其内部文本用作值。
标签: javascript dom