好吧,假设我有这个

<select id='list'>
    <option value='1'>Option A</option>
    <option value='2'>Option B</option>
    <option value='3'>Option C</option>
</select>

如果我想在值为“2”时获得“Option B”,选择器会是什么样子?

请注意,这并不是询问如何获取所选文本值,而是询问它们中的任何一个,无论是否被选中,这取决于value属性。我试着:

$("#list[value='2']").text();

但这并不奏效。


当前回答

作为另一种解决方案,你也可以使用jQuery选择器的上下文部分来在下拉列表中找到值="2"的<option>元素:

$("option[value='2']", "#list").text();

其他回答

如果页面上只有一个选择标签那么你可以在id 'list'中指定选择 jQuery(“选择选项[value = 2]”)。text (); 获取选定文本 jQuery(“选择选项:选择”)。text ();

Try

[...list.options].find(o=> o.value=='2').text

Let text =[…list.options]。找到(o = > o.value = = ' 2 ')。text; console.log(文本); <选择id =“列表”> <option value='1'>选项A</option> . /option> . /option> . > <option value='2'>选项B</option> <option value='3'>选项C</option> < /选择>

如果您希望获得值为2的选项,请使用

$("#list option[value='2']").text();

如果您想获得当前选择的任何选项,请使用

$("#list option:selected").text();

你可以使用.text()函数来获取选定的选项文本;

你可以像这样调用函数:

jQuery("select option:selected").text();

提示:如果你的值是动态的,你可以使用下面的代码:

$("#list option[value='"+aDynamicValue+"']").text();

或者(更好的风格)

$("#list option").filter(function() {
     return this.value === aDynamicValue;
}).text();

正如在jQuery中提到的,获取特定的选项标签文本并将动态变量放置到值中