2013-07-17 2 views
1

Я пытаюсь удалить все подходящие классы each().jQuery - удалите все совпадающие классы

Я выбираю подходящий класс, как [class*="ui-id-"]. Но мой код ниже JQuery не будет работать:

Мой код ошибки:

jQuery('#builder [class*="ui-id-"]').each(function(){ 
    jQuery(this).removeClass('[class*="ui-id-"]'); 
}); 

Пожалуйста, исправьте мой код так, что он может удалить все класс соответствия ui-id-

+0

@DavidThomas ФП с использованием «каждый» на идентификатор selector '#builder' –

+0

@mck да, он работал, раньше я пробовал это, но не знаю, почему это не сработало. – user007

+0

, пожалуйста, сообщите мне полную форму OP – user007

ответ

3

Попробуйте это следующим образом:

$('#builder [class*="ui-id-"]').removeClass(function(i, j) { 
      return j.match(/ui-id-/g).join(" "); 
}); 

следует удалить все соответствующие классы.

+0

любезно прочитайте вопрос повторно – user007

+0

Отредактированный ответ. Пожалуйста, проверьте – loxxy

+0

да, это работает – user007

1

вам не нужен каждый цикл здесь

попробовать это

jQuery('[class*="ui-id-"]').removeClass('[class*="ui-id-"]'); 

я удалил #builder, это будет легко выяснить, правильный ответ, если вы разместите вам соответствующий HTML-код слишком

+0

классы все еще там, я попробовал его с консоли, но не использовал – user007

+1

Опубликовать html ... – bipen

0

Попробуйте это:

jQuery('.ui-id-').removeClass('ui-id-'); 
+0

Действительно ли вы протестировали это? Для меня это выглядит фиктивным. –

+0

Выше будет работать, если 'classname' - это то же самое, не будет работать для шаблона http://jsfiddle.net/manoj_admlab/NbqUg/1/ –

1
jQuery("#builder [class^='ui-id-']").removeClass(); 

Это удалит все классы начинается Wiht ui-id-, присутствующего в #builder

+0

nope it wont work – user007

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); 
     } 
    } 
}); 
Смежные вопросы