多个ID选择器

时间:2013-08-04 18:12:22

标签: javascript jquery

我有一段代码如下

$('#go-back').click(function () {
    flipStep(currentStep - 1);
});

因此,当我点击任何带有返回ID的内容时,它将运行我的函数flipStep,但是当我点击任何东西但是第一个带有返回ID的元素时它不起作用?为什么是这样?我该如何解决?

2 个答案:

答案 0 :(得分:1)

ID必须是唯一的

HTML4规范:

http://www.w3.org/TR/html4/struct/global.html(第7.5.2节):

  

id = name [CS]       此属性为元素指定名称。该名称在文档中必须是唯一的。

HTML5规范:

http://www.w3.org/TR/html5/elements.html#the-id-attribute

  

id属性指定其元素的唯一标识符(ID)。该   value必须在元素的home子树中的所有ID中唯一   并且必须至少包含一个字符。该值不得包含   任何空格字符。

答案 1 :(得分:0)

我希望您需要选择所有元素ID等于 go-back

$('[id$="go-back"]')).click(function () {
    flipStep(currentStep - 1);
});

attribute-ends-with selector ([attr$=value])

如果id中包含任何地方,那么你可以尝试

$('[id$*="go-back"]')).click(function () {
    flipStep(currentStep - 1);
});

如果id开头,则可以使用

$'[id$^="go-back"]')).click(function () {
    flipStep(currentStep - 1);
});

Id starts with selector Multiple selector

希望这会对你有所帮助:)。