如何检索只有一个共同前缀的id数组?
E.g。 我有一个说50个div的列表,他们都得到了ID,看起来像:aa_0000。其中'a'是前缀,'0'代表随机数。
答案 0 :(得分:4)
您希望id
以div
开头的所有元素都是常见的吗?
假设它们都是// Just so we can stay DRY :)
var prefix = 'aa_',
matchElement = 'div';
// Do we have an awesome browser?
if ('querySelectorAll' in document) {
var matchedDivs = document.querySelectorAll(matchElement + '[id^="' + prefix + '"]');
} else {
var allDivs = document.getElementsByTagName(matchElement),
matchedDivs = [],
regex = new RegExp('^' + prefix);
for (var i = 0, allDivsLength = allDivs.length; i < allDivsLength; i++) {
var element = allDivs[i];
if (element.id.match(regex)) {
matchedDivs.push(element);
}
}
}
console.log(matchedDivs.length); // Expect 3
个元素,这应该有效....
/^aa_\d+$/
如果您想要将数字与数字明确匹配,请尝试使用正则表达式$('div[id^="aa__"]')
。
如果你有jQuery浮动,你可以使用{{1}}。
答案 1 :(得分:0)
对于使用jQuery的人:
$('div[id^="aa_"]')