Javascript jQuery使用正则表达式查找具有可变类名的元素?
我试图得到其中包含某个类名的元素的数量,问题是,这个类名的末尾有一个变量。例如:Javascript jQuery使用正则表达式查找具有可变类名的元素?,javascript,jquery,css,regex,Javascript,Jquery,Css,Regex,我试图得到其中包含某个类名的元素的数量,问题是,这个类名的末尾有一个变量。例如: <div class="row"> <div class="col"> </div> <div class="col width-33"> </div> <div class="col"> </div> </div> 我希望输出为31,显示总共有3列,其中1列有一个
<div class="row">
<div class="col">
</div>
<div class="col width-33">
</div>
<div class="col">
</div>
</div>
我希望输出为31
,显示总共有3列,其中1列有一个名为width xx的类
正如上面的例子所示,我尝试过使用CSS选择器,但没有任何效果(outputs30
)
我也尝试过使用RegExp,但我不确定如何将其添加到其中
var widthClass = new RegExp("width-");
if(widthClass.test($('.col').attr('class'))){
//do something
}
因此,我只想计算类中包含单词“width-”的元素数。$('[class*=“width-”])。length
应该可以做到这一点。此选择器允许您在类中查找对单词“width-”进行计数的任何元素(“[class*=”width-“]”)。长度应该可以做到这一点。
此选择器允许您在类中查找对单词“width-”进行计数的任何元素非常简单。。。非常感谢。我是这样使用它的:
var numColsWidth=$(this).children('[class*=“width”]').length代码>接受答案需要10分钟,但这会被接受,然后这可能会解决你的问题,但要小心。如果你也有一个类,比如固定宽度
,它也会与之匹配。怎么会呢?仔细看看我的解决方案。宽度的末尾有一个连字符,因此它将不匹配固定的宽度好点。我可能只是将“width-”更改为一个唯一的关键字,在这种情况下,这应该可以。我想他的意思是,如果有一个类像这个width fixed
,它将调用它。我认为可以通过说$('[class*=“width-“]')
来解决这个问题,在width前面加一个空格非常简单。。。非常感谢。我是这样使用它的:var numColsWidth=$(this).children('[class*=“width”]').length代码>接受答案需要10分钟,但这会被接受,然后这可能会解决你的问题,但要小心。如果你也有一个类,比如固定宽度
,它也会与之匹配。怎么会呢?仔细看看我的解决方案。宽度的末尾有一个连字符,因此它将不匹配固定的宽度好点。我可能只是将“width-”更改为一个唯一的关键字,在这种情况下,这应该可以。我想他的意思是,如果有一个类像这个width fixed
,它将调用它。我认为可以通过说$('[class*=“width-“]')
在宽度前面加一个空格来解决这个问题,为什么不添加另一个has width
类来精确搜索,而不是搜索一个模式?为什么不添加另一个has width
类来精确搜索,而不是寻找一种模式?
var widthClass = new RegExp("width-");
if(widthClass.test($('.col').attr('class'))){
//do something
}