为了账号安全,请及时绑定邮箱和手机立即绑定

如何在jQuery中的SELECT元素中选择特定的选项?

如何在jQuery中的SELECT元素中选择特定的选项?

茅侃侃 2019-07-09 16:46:03
如何在jQuery中的SELECT元素中选择特定的选项?如果您知道索引、值或文本。此外,如果您没有直接引用的ID。这,这个, 这,这个和这,这个都是有用的答案。示例标记<div class="selDiv">   <select class="opts">     <option selected value="DEFAULT">Default</option>     <option value="SEL1">Selection 1</option>     <option value="SEL2">Selection 2</option>   </select></div>
查看完整描述

3 回答

?
手掌心

TA贡献1942条经验 获得超3个赞

要按值获取中间选项-元素的选择器是

$('.selDiv option[value="SEL1"]')

索引:

$('.selDiv option:eq(1)')

关于已知案文:

$('.selDiv option:contains("Selection 1")')

编辑*如上所述,OP可能是在更改下拉列表的选定项之后。在版本1.6和更高版本中,建议使用PROPORT()方法:

$('.selDiv option:eq(1)').prop('selected', true)

在旧版本中:

$('.selDiv option:eq(1)').attr('selected', 'selected')

EDIT 2瑞安的评论之后。“选择10”上的匹配可能是不需要的。我发现没有选择器匹配全文,但是滤光器作品:

 $('.selDiv option')
    .filter(function(i, e) { return $(e).text() == "Selection 1"})

EDIT 3*注意$(e).text()因为它可以包含一个换行符,使得比较失败。当选项隐式关闭时(否),就会发生这种情况。</option>(标签):

<select ...><option value="1">Selection 1<option value="2">Selection 2
   :</select>

如果你只是用e.text任何额外的空白,如尾随换行符将被删除,使比较更加健壮。


查看完整回答
反对 回复 2019-07-09
?
胡说叔叔

TA贡献1804条经验 获得超8个赞

上面的任何一种方法都没有提供我所需要的解决方案,所以我想我会提供对我有用的解决方案。

$('#element option[value="no"]').attr("selected", "selected");


查看完整回答
反对 回复 2019-07-09
?
天涯尽头无女友

TA贡献1831条经验 获得超9个赞

你可以用val()方法:

$('select').val('the_value');


查看完整回答
反对 回复 2019-07-09
  • 3 回答
  • 0 关注
  • 1230 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信