如何在jquery中用另一个替换特殊类?

qin*_*ang 11 jquery replace class

例如:

<li class="dataItem ready igto" status="ready">I will change status to waiting</li>
Run Code Online (Sandbox Code Playgroud)

然后,我只是想改变准备好类,以等待 .THe正常的方法是去除类准备,并增加新的类!

另一种情况是如何立即更换多班!?例如:

<!-- replace done wainting error to ready -->
<li class="dataItem done igto" status="ready">I will change status to ready</li>
<li class="dataItem waiting igto" status="ready">I will change status to ready</li>
<li class="dataItem error igto" status="ready">I will change status to ready</li>
Run Code Online (Sandbox Code Playgroud)

至 :

<li class="dataItem ready igto" status="ready">I will change status to waiting</li>
Run Code Online (Sandbox Code Playgroud)

非常感谢你!!

Sam*_*son 24

你可以用它$.toggleClass()来实现这一目标.

$("p").click(function(){
  // Replace 'done' with 'waiting' or 'waiting' with 'done'
  $(this).toggleClass("done waiting");   
});
Run Code Online (Sandbox Code Playgroud)

示例:http://jsfiddle.net/wH9x3/


Dav*_*ang 21

最好的方法是按照你的说法去掉类,然后再添加它,因为jQuery中没有"切换"类.

$('.dataItem').removeClass('ready').addClass('waiting');
Run Code Online (Sandbox Code Playgroud)

您可以通过将多个类传入以下内容来替换多个类.removeClass():

$('.dataItem').removeClass('done waiting error').addClass('ready');
Run Code Online (Sandbox Code Playgroud)