使用jQuery基于选项值文本而不是值设置下拉列表选定值

时间:2013-10-30 00:34:20

标签: javascript jquery drop-down-menu

我希望能够将下拉列表中的“selected”项设置为文本等于“None”的选项值。这是我的下拉列表:

<select data-val="true" data-val-number="The field SecondaryFillerFk must be a number." data-val-required="The SecondaryFillerFk field is required." id="SecondaryFillerFk" name="SecondaryFillerFk">
    <option value="46">Lactose, Spray-Dried</option>
    <option value="47">Microcrystalline Celluose</option>
    <option value="48">Sodium Bicarbonate</option>
    <option value="49">Methocel E4M</option>
    <option value="50">Methocel K100M</option>
    <option value="53">None</option>
</select>

以下jQuery显然不起作用,因为它正在寻找“None”的值,这是不存在的。

$('#SecondaryFillerFk').val('None');

问题:如何将我的下拉列表的选定值设置为 TEXT 等于“无”的选项?

1 个答案:

答案 0 :(得分:3)

尝试

$('#SecondaryFillerFk option:contains("None")').prop('selected', true);

演示:Fiddle

注意:如果有其他选项包含文字Nonexxxx,则可能会失败,那么您需要

$('#SecondaryFillerFk option').filter(function(){
    return $.trim($(this).text()) == 'None'
}).prop('selected', true);

演示:Fiddle