我正在尝试删除所有运行each()
函数的匹配类。
我选择匹配的类[class*="ui-id-"]
。但我的下面的jquery代码不起作用:
我的错误代码:
jQuery('#builder [class*="ui-id-"]').each(function(){
jQuery(this).removeClass('[class*="ui-id-"]');
});
请更正我的代码,以便删除所有匹配的课程ui-id-
答案 0 :(得分:3)
以这种方式尝试:
$('#builder [class*="ui-id-"]').removeClass(function(i, j) {
return j.match(/ui-id-/g).join(" ");
});
应删除所有匹配的类。
答案 1 :(得分:2)
不幸的是,最简单的方法是迭代所有元素:
jQuery('#builder').find('*').each(function() {
var classes = this.className.split(/\s+/);
$.each(classes, function(i, c) {
if (c.indexOf('ui-id-') === 0) {
$(this).removeClass(c);
}
}
});
答案 2 :(得分:1)
这里不需要每个循环
试试这个
jQuery('[class*="ui-id-"]').removeClass('[class*="ui-id-"]');
我删除了#builder
,如果您发布相关的html代码,也很容易找到正确的答案
答案 3 :(得分:1)
jQuery("#builder [class^='ui-id-']").removeClass();
这将删除所有以ui-id-
#builder
开头的课程
答案 4 :(得分:0)
试试这个:
jQuery('.ui-id-').removeClass('ui-id-');