这个jquery表达式有什么问题?

时间:2010-12-16 21:37:59

标签: jquery selector

我想用...选择我的所有文本框。

$("input[@type=text]")

从jquery文档来看,它似乎应该是有效的语法。

http://docs.jquery.com/DOM/Traversing/Selectors的页面下方有一个例子......

$("input[@type=radio][@checked]")

...这与我的表达非常相似。当我用FireBug观察我的表情时,我得到了一个

Syntax error, unrecognized expression: [@type='text'] 

错误。

我试过......

$("input[@type='text']")也无济于事。我很感激任何提示!

4 个答案:

答案 0 :(得分:6)

您正在查看的API文档很旧(可能基于XPath选择器)。您想查看attribute-equals选择器。如果您有兴趣,还有其他属性选择器(包含,开头等)。

$("input[type='text']")应该适合你

示例:http://jsfiddle.net/jonathon/hCRkW/

答案 1 :(得分:3)

尝试:

$('input:text')

$('input:radio')

@ selectors在jQuery 1.2中被弃用,我相信在1.3中消失了。

答案 2 :(得分:1)

试试这个:$('input[type="text"]')

答案 3 :(得分:1)

试试$('input[type=text]')

我认为在旧版本的jquery中,您需要在属性名称前面加上@符号。较新版本不需要它。

请参阅http://api.jquery.com/attribute-equals-selector/