晚上好,我在JSP中有这些动态生成的下拉列表:`
<td><select name="model" id="model" onchange="convertDropDownToTextBox()">
<c:forEach items="${model_list}" var="item">
<option value="${item.modelId}">${item.modelName}</option>
</c:forEach>
<option value="100">Add New Model</option>
</select></td>
我尝试使用这些脚本从这些下拉列表中获取所选值:
function convertDropDownToTextBox(){
var select = document.getElementById("model");
var selectedString = select.options[select.selectedIndex].value;
alert(selectedString);
}
这里的问题是它总是为下拉列表中选择的每个项目提供1但是我将onChange更改为onchange="alert(this.value)"
它会打印正确的值!!那怎么样?以及如何获取DropDown中选择的每个项目的实际索引
答案 0 :(得分:3)
不完全确定问题是什么,但这对我有用:
var select = document.getElementById("model");
select.onchange = function(){
var selectedString = select.options[select.selectedIndex].value;
alert(selectedString);
}
答案 1 :(得分:0)
只需将event
对象传递给Endpoint函数:
<select onchange="convertDropDownToTextBox(event)">
<option value="1">Option 1</option>
</select>
然后您可以从函数内访问值event.target.value
:
function timeFrameChanged(e) {
console.log(e.target.value);
}