当值包含空格时,jquery不选择选项标记

时间:2009-11-05 19:21:37

标签: jquery jquery-selectors

使用jquery选择contains / find时,是否需要以某种方式转义空格?

我正在嘲笑这个错误所以请原谅... 如果我有一个带有一些选项的SELECT标签

<select title="animals">
<option value="Dog Black">Dog Black</option>
<option value="Cat Black">Cat Black</option>
<option value="Dog Brown">Dog Brown</option>
</select>

我试图使用jquery在这个选择中找到选项。但是当传递给搜索的值包含空格时,似乎“find”方法或“contains”函数失败。例如:

以下返回2的大小:

$('*[title="animals"]').find("option:contains('Dog')").size()

但是这也会回归0,我也期望2:

$('*[title="animals"]').find("option:contains('Dog B')").size()

我的猜测是,这与选择器有关,它正在寻找带有“B”或其他东西的子元素,但我不太确定。

2 个答案:

答案 0 :(得分:0)

很抱歉在敲了几个小时之后,我发现了一个导致问题的代码,在代码中的其他地方发现了一个错误,关闭了这个

答案 1 :(得分:0)

我在一个页面中测试了这个确切的代码,其中没有其他内容,并且它在我的所有浏览器中的find()函数中返回2。也许您的代码中还有其他内容干扰您的结果?也许你在某处隐藏了结果并忘记了价值,或者覆盖了它?

或者你可能已经发现了问题。 :P