通配符选择器jQuery

时间:2013-06-06 07:57:05

标签: jquery click toggle selector

我正在制作一个能够解释某事的解释的代码。 代码是:

jQuery('.button').click(function () {
       jQuery('#explanation').toggle();
});

我得到了多个解释:#explanation1#explanation2等等。

我如何通配符选择号码?类似的东西:

jQuery('.button').click(function () {
       jQuery('#explanation*').toggle();
});

我无法弄清楚,尝试了多种解决方案,但没有一种方法可行。

6 个答案:

答案 0 :(得分:2)

最佳解决方案是在每个人上放一个课程并使用

<div id="explanation1" class="exp">...</div>
<div id="explanation2" class="exp">...</div>
<div id="explanation3" class="exp">...</div>

jQuery('.button').click(function () {
       jQuery('.exp').toggle();
});

否则,您必须在id属性

上使用starts-with selector
jQuery('[id^="explanation"]').toggle()

答案 1 :(得分:1)

您可以使用attribute starts with选择器:

jQuery('[id^="explanation"]').toggle()

答案 2 :(得分:0)

<强> Working jsFiddle Demo

使用此:

jQuery('.button').click(function () {
    jQuery('[id^="explanation"]').toggle();
});

参考文献:

答案 3 :(得分:0)

您可以通过ID模式实现此目的:http://api.jquery.com/attribute-starts-with-selector/

 jQuery('.button').click(function () {
   jQuery('[id^="explanation"]').toggle();
});

答案 4 :(得分:0)

jQuery('[id^=explanation]').toggle();

试试这个

答案 5 :(得分:0)

我需要这样:

if (jQuery(this).attr('name') == 'level_1' + wildcart)

我决定:

if (jQuery(this).attr('name').substr(0,7) == 'level_1')