在jQuery中,为什么$("#myid").val()
返回select元素的值,但$("select[value='abcd']")
找不到值为abcd的select元素?我如何做后者 - 在表格中找到值为' abcd'的所有选择元素?
编辑:我设法通过解决方法检索选择元素ID:我将选择的ID添加为其所有'选项。然后我使用:$(" option [value = abcd]:selected")查找所有选定的选项,其值为abcd,最后是$(this).attr(" myAttr")在.each(function(){})里面获取id。
有更好的方法吗?
答案 0 :(得分:0)
实际上,value
代码没有select
属性,因此不会被选中。您可以使用jQuery :has()
伪类选择器或has()
方法来获取包含具有特定属性值的选项标记的select标记。
$("select:has([value='abcd'])")
// or
$("select").has("[value='abcd'])")
// or
$("select [value='abcd']").parent()
<小时/> 更新:如果您要选择所有选择值为
abcd
的选择标记,请使用filter()
方法。
$("select").filter(function(){
return this.value == 'abcd';
})
答案 1 :(得分:0)
您可以使用以下方法获取所选值
$(&#34; #id选项:已选择&#34;)。val();