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