首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用jQuery设置下拉列表的选定索引

使用jQuery设置下拉列表的选定索引
EN

Stack Overflow用户
提问于 2009-08-21 21:11:09
回答 10查看 525K关注 0票数 180

如果我找到控件的方式如下所示,我如何在jQuery中设置下拉列表的索引:

代码语言:javascript
复制
$("*[id$='" + originalId + "']") 

我之所以这样做,是因为我是动态创建控件的,而且由于在使用Web表单时ids会更改,因此我发现这是查找一些控件的一种变通办法。但是一旦有了jQuery对象,我就不知道如何将选定的索引设置为0(零)。

EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2009-08-21 21:15:10

首先,选择器相当慢。它将扫描每个DOM元素以查找It。如果您可以为元素分配一个类,那么对性能的影响就会小一些。

代码语言:javascript
复制
$(".myselect")

不过,为了回答您的问题,有几种方法可以更改jQuery中的select元素值

代码语言:javascript
复制
// sets selected index of a select box to the option with the value "0"
$("select#elem").val('0'); 

// sets selected index of a select box to the option with the value ""
$("select#elem").val(''); 

// sets selected index to first item using the DOM
$("select#elem")[0].selectedIndex = 0;

// sets selected index to first item using jQuery (can work on multiple elements)
$("select#elem").prop('selectedIndex', 0);
票数 378
EN

Stack Overflow用户

发布于 2010-06-23 18:12:40

我刚找到这个,它对我很有效,我个人觉得它更容易阅读。

这将设置实际的索引,就像gnarf的3号答案选项一样。

代码语言:javascript
复制
// sets selected index of a select box the actual index of 0 
$("select#elem").attr('selectedIndex', 0);

这以前不管用,但现在管用了。请参阅错误:http://dev.jquery.com/ticket/1474

附录

按照评论中的建议,使用:

$("select#elem").prop('selectedIndex', 0);

票数 108
EN

Stack Overflow用户

发布于 2015-02-06 00:35:58

我写这个答案是在2015年,由于某种原因(可能是旧版本的jQuery),其他的答案都不适合我。我的意思是,他们改变了选定的索引,但它实际上并没有反映在实际的下拉列表中。

以下是更改索引的另一种方法,并实际将其反映在下拉列表中:

代码语言:javascript
复制
$('#mydropdown').val('first').change();
票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1314245

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档