正如问题所说,我如何使用jQuery设置下拉列表控件的值?
当前回答
如果你只需要设置一个下拉列表的值,那么最好的方法是
$("#ID").val("2");
如果你必须在更新下拉列表值后触发任何脚本,比如如果你在下拉列表上设置任何onChange事件,并且你想在更新下拉列表后运行这个,那么你需要像这样使用
$("#ID").val("2").change();
其他回答
如果你只需要设置一个下拉列表的值,那么最好的方法是
$("#ID").val("2");
如果你必须在更新下拉列表值后触发任何脚本,比如如果你在下拉列表上设置任何onChange事件,并且你想在更新下拉列表后运行这个,那么你需要像这样使用
$("#ID").val("2").change();
试试这个非常简单的方法:
/*make sure that value is included in the options value of the dropdownlist
e.g.
(<select><option value='CA'>California</option><option value='AK'>Alaska</option> </select>)
*/
$('#mycontrolId').val(myvalue).attr("selected", "selected");
//customerDB is an Array
for(i of customerDB){
//create option and add to drop down list
var set = `<option value=${i.id}>${i.id}</option>`;
$('#dropDown').append(set);
}
// print dropdown values on console
$('#dropDown').click(function(){
console.log($(this).val())
})
正如@Nick Berardi所建议的,如果你更改的值没有反映在UI前端,尝试:
$("#mydropdownlist").val("thevalue").change();
如果你的下拉菜单是Asp。净下拉,然后下面的代码将工作正常,
$("#<%=DropDownName.ClientID%>")[0].selectedIndex=0;
但如果你的下拉是HTML下拉,那么这段代码将工作。
$("#DropDownName")[0].selectedIndex=0;
推荐文章
- 使用jQuery改变输入字段的类型
- 使用jQuery以像素为整数填充或边距值
- 检查是否选择了jQuery选项,如果没有选择默认值
- 将Dropzone.js与其他字段集成到现有的HTML表单中
- 使用jQuery滚动到一个div
- 在JS/jQuery中触发按键/按键/按键事件?
- 如何每5秒重新加载页面?
- getJSON调用中的错误处理
- 如何用jquery或javascript排序对象数组
- 下拉列表的SelectedIndexChanged事件没有触发
- 使用jQuery切换输入禁用属性
- 如何知道一个字符串开始/结束在jQuery特定的字符串?
- Twitter Bootstrap vs jQuery UI?
- 如何绑定“触摸启动”和“点击”事件,但不回应两者?
- 如何使用jQuery从URL中获得锚?