jQuery选择帮助 - 如何找到元素的ID开始,并为特定的字符结束(jQuery selector

2019-07-22 03:38发布

我的影片动态创建的页面。 它可以有多个ID为的,像这样不同的单选按钮:

<input type="radio" id="cc-radio-opt-0" />
<input type="radio" id="cc-radio-opt-1" />
<input type="radio" id="gc-radio-opt-0" />
<input type="radio" id="gc-radio-opt-1" />

为了写变化的功能,我在做这样的事情:

$('[id^=cc-radio-opt-]').live("change", function() {
    var idx = $(this).attr('id').split('-').pop(); 
});

这种运作良好。 但现在,这种改变函数内部,我需要隐藏了一堆其他相关领域。 它们被命名为这样的:

<input type="text" id="cc-number-0" />
<input type="text" id="cc-month-0" />
<input type="text" id="gc-number-0" />
<input type="text" id="gc-month-0" />
<input type="text" id="cc-number-1" />
<input type="text" id="cc-month-1" />
<input type="text" id="gc-number-1" />
<input type="text" id="gc-month-1" />

我需要能够抓住它的ID以“CC”的所有字段和相同数量的被点击的单选按钮(在确定最终idx变量。我知道我能得到这样开始的所有字段“CC “ 通过做这个:

$('[id^=cc-]');

但是,我怎么能还表示,他们需要结束与任何idx是什么? 换句话说,如果cc-radio-opt-1被点击收音机,我怎么能只得到cc-number-1cc-month-1

Answer 1:

嗯,你几乎没有... $('[id^=cc-][id$=1]')

DEMO: http://jsfiddle.net/pavloschris/nr3ad/



Answer 2:

过滤用你选择的选择“结尾”。

http://api.jquery.com/attribute-ends-with-selector/

$('[id^="cc-"]').filter('[id$="idx"');

并确保包括引号。



文章来源: jQuery selector help - how to find element whose ID starts and ends with specific characters