我需要使用JQuery选择选项17 我不能使用价值,因为它总是不同的。 那么有没有任何解决方案可以使用“选择”儿童或某些东西? 谢谢。
<select name="size" id="size">
<option value="1430">17</option>
<option value="1429">19</option>
<option value="1428">20</option>
<option value="1427">16</option>
<option value="1426">15</option>
<option value="1425">18</option>
</select>
答案 0 :(得分:4)
$('select[name="size"] option').each(function() {
if($(this).text() == '17') {
$(this).prop('selected', true);
}
});
答案 1 :(得分:3)
您可以使用:contains()
selector:
$("#size").find("option:contains(17)").prop("selected",true);
虽然那样也可以选择像1117
这样的文字。因此,您可以使用.filter()
(与$.trim()
一起使用):
$("#size option").filter(function() {
return $.trim($(this).text()) === "17";
}).prop("selected", true);
或者,一个好的旧.each()
循环会让您在找到匹配项后立即停止,因此它比.filter()
更麻烦,但效率更高:
$("#size option").each(function() {
if ($.trim($(this).text()) === "17") {
$(this).prop("selected", true);
return false;
}
});
答案 2 :(得分:0)
Jquery让开发人员的生活如此轻松:)
var setstatus=17;
$("#size option:contains(" + setstatus + ")").attr('selected', 'selected');