jquery根据text设置选中项

设置Select的Text值为jQuery的项选中,

网上一般都是说  $("#select_id option[text='jQuery']").attr("selected", true);

或者 $(".selector").find("option[text='pxx']").attr("selected",true);

其实在老版本的jquery没问题,

但是在最近一个项目中却不行了,

应该是jquery版本的问题,我用的是1.10.2

后来改成如下用filter就可以了..

$("#editProjectType").val($("#editProjectType option").filter(function () { return $(this).html() == ProjectType; }).val());

还有一种使用:contains 选择器的方法也可以去试试...

You can use the :contains() selector to select elements that contain specific text.
For example:

$('#mySelect option:contains(abc)')

To check whether a given <select> element has such an option, use the .has() method:

if (mySelect.has('option:contains(abc)').length)

To find all <select>s that contain such an option, use the :has() selector:

$('select:has(option:contains(abc))')

参考:https://stackoverflow.com/questions/3744289/jquery-how-to-select-an-option-by-its-text
原文地址:https://www.cnblogs.com/allenfly/p/6927953.html