1

知道为什么这个选择器会失败吗?

$('.Demographics :input["data-name"]')

你可以在 jsfiddle看到它。

我正在尝试获取所有input具有data-name属性的元素。

在 jquery 1.9 中,我得到了这个:

Syntax error, unrecognized expression: .Demographics :input["data-name"]
4

3 回答 3

4

改变:

$('.Demographics :input["data-name"]')

$('.Demographics :input[data-name]').length

演示;jsFiddle

于 2013-01-21T03:31:03.680 回答
2

属性名称不能有引号,只能是属性值。 "data-name"不是有效的属性名称。唯一data-name的就是:

$(".Demographics :input[data-name]")

但是,对于值,您可以使用引号:

$(".Demographics :input[data-name='test1']")

后者不是必需的,但建议使用。

于 2013-01-21T03:33:36.333 回答
1
$('.Demographics').find('input[data-name]').length

要不就:

$('.Demographics :input[data-name]').length
于 2013-01-21T03:32:04.413 回答