如何使用jquery使用text而不是value设置SELECT控件?

时间:2015-02-16 11:52:02

标签: jquery

我有以下HTML

<SELECT id='cars'>
   <OPTION value='1'>Car One</option>
   <OPTION value='2'>Second Car</option>
   <OPTION value='3'>Another Car</option>
</SELECT>

我知道我可以使用以下命令将下拉控件的选定值更改为任何值:

$('#cars').val(2);   // This will make the combo text: Second Car

但是如何使用文本而不是值来选择值?

我需要做的是:

$('#cars').val('Another Car');

$('#cars').text('Another Car');

但这没有效果......

任何帮助?

2 个答案:

答案 0 :(得分:5)

如果要获取包含文本的值,则可以使用contains

$('#cars option:contains("Another Car")');

根据@Burimi的建议:contains也会尝试匹配它的值,所以你必须使用文本属性

<击> $('#cars').find('option[text*="Another Car"]').val();

抱歉,评论引起的混淆。但是只包含匹配它的文本而不是它的价值。

答案 1 :(得分:0)

尝试这个

var text="text";
var check=$('#cars').find('option[text='+text'+]').val();
        $('#cars').val(check);