1

outerdiv 我想删除所有的类testClass ,但这不起作用。

http://jsfiddle.net/TAcZJ/

jQuery

$('#outer').removeClass('testClass');

html

 <span class="testClass">d</span>
 <span class="testClass">d</span>
 <span class="testClass">d</span>
 <span class="testClass">d</span>

<div id="outer">
    <span class="testClass">d</span>
    <span class="testClass">d</span>
    <span class="c">d</span>
    <span class="testClass">d</span>
    <span class="testClass">d</span>
    <span class="testClass">d</span>
    <span class="c">d</span>
    <span class="testClass">d</span>
    <span class="testClass">d</span>
    <span class="testClass">d</span>
</div>

css

.testClass{color:red;}

.c{ color:blue;}
4

7 回答 7

6
$('#outer > .testClass').removeClass('testClass');

您当前仅选择包装器 div,而不是子类与类的跨度。我会反对其他答案,因为他们选择了不必要的元素。

于 2013-05-15T11:14:58.030 回答
6

方法一

$('#outer > .testClass').removeClass('testClass');('testClass');

方法二

$('#outer').find('span').removeClass('testClass');

方法 3

$('#outer').children('span').removeClass

方法 4

$('#outer').children().removeClass('testClass');

方法 5

jQuery.grep($('#outer > .testClass'), function (data) {
        $(data).removeClass('testClass');
});

方法 6

$.each($('#outer > .testClass'), function(index, data){
     $(data).removeClass('testClass');
});
于 2013-05-15T11:15:11.280 回答
1

你可以这样做 :

$('#outer').children().removeClass('testClass');
于 2013-05-15T11:16:20.177 回答
1
$('#outer span').removeAttr('class');
于 2013-05-15T11:16:41.513 回答
0
$('#outer span').removeClass('testClass');

or

$('#outer .testClass').removeClass('testClass');

or

$('#outer').find('.testClass').removeClass('testClass');
于 2013-05-15T11:47:56.047 回答
0

尝试这个

$('#outer > span').removeClass('testClass'); 

或者

  $('#outer  span').removeClass('testClass');

关联

于 2013-05-15T11:14:43.793 回答
0
document.getElementById("outer").innerHTML = document.getElementById("outer").innerHTML.replace(/testClass/g, '');

只需使用一些 VanilaJS ;-) 就足够了。

于 2013-05-15T11:18:45.597 回答