0

如何在 jQuery中选择以, , ...开头的多类?foo-class-foo-class-1foo-class-2foo-class-3

4

4 回答 4

2

使用Attribute Starts With Selector试试这个:

案例 1:当您有一个元素的单个类时

var $class = $('[class^="foo-class-"]');

案例 2:当您有多个元素类时(感谢 Adeneo

var $class = $('[class]').filter(function(){
    return (" " + this.className).indexOf(' foo-class-') != -1;
});
于 2013-06-05T13:41:14.280 回答
2

看这里

$("[class^='foo-class']") 

您可以指定任何您想要的属性来代替class

于 2013-06-05T13:41:22.547 回答
2
var foos = $('*', parent_selector).filter(function() {
              return (" " + this.className).indexOf(' foo-class-') != -1;
           });
于 2013-06-05T13:49:49.513 回答
0

如果您的class=""属性有任何可能具有多个类,那么您最好改为推出自定义.filter()选择。

在这里,我使用正则表达式来过滤掉类值具有foo-class-. 我的正则表达式虽然生锈了,所以我确信这是次优的,但你应该明白要点。

var candidates = $('div'); // or some preliminary selection
var finalists = candidates.filter(function () {
    return !!/\bfoo-class-.*/.exec(this.className);
});
于 2013-06-05T13:55:15.430 回答