当前位置:  开发笔记 > 编程语言 > 正文

如何使用jQuery设置DropDownList的值?

如何解决《如何使用jQuery设置DropDownList的值?》经验,为你挑选了6个好方法。

正如问题所说,如何使用jQuery设置DropDownList控件的值?



1> Nick Berardi..:
$("#mydropdownlist").val("thevalue");

只需确保options标记中的值与val方法中的值匹配.


这不会触发"更改"事件.
想要重申 - 确保你设置了"value"属性,否则这个方法将不起作用.(我正在帮助向我展示这一点的人,并想知道为什么不通过下拉列表中的文本进行选择.)想要确保这一点很清楚.

2> mattsson..:

如果使用索引,则可以使用.attr()直接设置所选索引:

$("#mydropdownlist").attr('selectedIndex', 0);

这会将其设置为下拉列表中的第一个值.

编辑: 我上面的方式曾经工作过.但它似乎不再存在了.

但正如Han在评论中如此愉快地指出的那样,正确的做法是:

$("#mydropdownlist").get(0).selectedIndex = index_here;


现在,这根本不起作用,因为`select`标签没有任何名为`selectedIndex`的属性.它取而代之的是DOM对象的属性.因此代码应该是:`$("#mydropdownlist").get(0).selectedIndex = index_here;`
`$("#mydropdownlist").prop('selectedIndex',index_here);`也有效.

3> 小智..:

正如@Nick Berardi所建议的那样,如果您的更改后的值未反映在UI前端,请尝试:

$("#mydropdownlist").val("thevalue").change();



4> 小智..:

试试这个非常简单的方法:

/*make sure that value is included in the options value of the dropdownlist 
e.g. 
()
*/

$('#mycontrolId').val(myvalue).attr("selected", "selected");



5> salah9..:

如果您的下拉列表是Asp.Net下拉,那么下面的代码将正常工作,

 $("#<%=DropDownName.ClientID%>")[0].selectedIndex=0;

但是如果你的DropDown是HTML下拉,那么这段代码就可以了.

 $("#DropDownName")[0].selectedIndex=0;



6> 小智..:

问题的最佳答案:

$("#comboboxid").val(yourvalue).trigger("chosen:updated");

例如:

$("#CityID").val(20).trigger("chosen:updated");

要么

$("#CityID").val("chicago").trigger("chosen:updated");

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有