我需要计算所有ID为'hi *'的元素。
例如,如果我们在下面有标记:
<div id="hi1"></div>
<div id="hi2"></div>
Num值必须为'2'。
在网络上我发现了这个:
var num = $('.insttip:regex(id,'+ id[0] + '*').length;
但这不起作用:( 谢谢!
答案 0 :(得分:2)
答案 1 :(得分:1)
如果要在不使用jQuery插件的情况下针对元素的属性测试正则表达式,可以使用.filter()
执行此操作。例如:
$('div').filter(function () {
return /^hi.*$/.test(this.id);
});
或者如果您只想要数字:
$('div').filter(function () {
return /^hi\d+$/.test(this.id);
});
在这种情况下,您可以使用其他答案所记录的[id^="hi"]
选择器。但这不是使用正则表达式的一般方法。 .filter()
方法提供了比内置jQuery选择器更多的灵活性,因此它通常是一种熟悉的好方法。
答案 2 :(得分:0)
试试这个:
$('div[id^="hi"]').length;
答案 3 :(得分:0)