5

我有一个<select>带有一堆<option>标签的菜单,所有标签都是从数据库表中填充的。

我需要使用一个 jquery 选择器,例如$('option[value=d&c]')为了找到一个选项,比如这个:

<option value="d&c">d&amp;c</option>

请注意,该value属性中没有编码的 & 符号 ( &amp;),只是一个直的 & 符号 ( &),因为 Zend Framework 是如何填充它的。

唯一的问题是 jQuery 因以下错误而窒息:

uncaught exception: Syntax error, unrecognized expression: [value=d&c]

它也不会接受$('option[value=d&amp;c]')。无论哪种情况,都是&符号弄乱了它。有谁知道如何绕过这个限制?

4

3 回答 3

10

您错过了价值周围的引号

这有效:

$('option[value="d&c"]')

jsFiddle

于 2012-02-15T22:49:29.183 回答
6

尝试逃脱它...

$('option[value=d\\&c]')

js小提琴

...或使用文档中推荐的引号。

于 2012-02-15T22:51:43.930 回答
1

当您在引号中设置选项值时,它会起作用:

$(function() {
    alert($("option[value='d&c']").text());       
});

http://jsfiddle.net/fGTRv/

于 2012-02-15T22:53:34.950 回答