如何使用jquery each()和hasClass()匹配所有匹配的类

时间:2018-09-23 04:36:35

标签: jquery

我循环遍历页面上的所有div,试图获取整个类名(一个div上的多个类名)-现在我只是用console.logging出来,但只输出最合适的匹配项-上还有另外7个页(在包含包装的div内),但我只能获取第一个-任何想法。

这些类的名称为:

  

pge-rep-1,pge-rep-2,pge-rep-3 ... pge-rep-8

代码如下:

            $('#pagePoints div').each(function (index) 
            {
                if ( $(this).hasClass("pge-rep-"+index) ) {
                    console.log( $(this).attr('class') );   
                }
            });

1 个答案:

答案 0 :(得分:1)

选择器中可能还有其他元素,这些元素没有任何以pge-rep-开头的类。因此,index不必与指定的class匹配元素的顺序。您可以使用jQuery.is

尝试以下方式
$('#pagePoints div').each(function (index) {
    if ( $(this).is('[class*=pge-rep-]')) {
        console.log( $(this).attr('class') );   
    }
});