我需要检查<select>是否有一个文本等于特定值的选项。
例如,如果有一个<option value="123">abc</option>,我将寻找"abc"。
有选择器来做这个吗?
我在寻找类似于$('#选择选项[值="123"]');除了文本。
我需要检查<select>是否有一个文本等于特定值的选项。
例如,如果有一个<option value="123">abc</option>,我将寻找"abc"。
有选择器来做这个吗?
我在寻找类似于$('#选择选项[值="123"]');除了文本。
当前回答
使用以下
$('#select option:contains(ABC)').val();
其他回答
这也是可行的。
$(" #测试”)。找到(“选择选项:包含(B)”).filter(":选择");
我遇到了同样的问题,下面是工作代码:
$("#test option").filter(function() {
return $(this).text() =='Ford';
}).prop("selected", true);
演示:http://jsfiddle.net/YRBrp/83/
这可能会有所帮助:
$('#test').find('option[text="B"]').val();
演示小提琴
这将为你提供带有文本B的选项,而不是包含文本B的选项。
对于最新版本的jQuery,上述问题无法解决。正如下面Quandary所评论的,这是jQuery 1.9.1的工作原理:
$('#test option').filter(function () { return $(this).html() == "B"; }).val();
更新的小提琴
使用以下
$('#select option:contains(ABC)').val();
下面的jquery 1.10.2版本适合我
var selectedText="YourMatchText";
$('#YourDropdownId option').map(function () {
if ($(this).text() == selectedText) return this;
}).attr('selected', 'selected');
});