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

时间:2011-02-15 02:28:11

标签: jquery class replace

E.g:

<li class="dataItem ready igto" status="ready">I will change status to waiting</li>

然后,我只想将准备好的课程更改为等待。通常的方法是删除 课程就绪并添加新课程!

,另一种情况是如何立即更换多班!? E.g:

<!-- 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>

到:

<li class="dataItem ready igto" status="ready">I will change status to waiting</li>

非常感谢!!

2 个答案:

答案 0 :(得分:24)

您可以使用$.toggleClass()来实现此目标。

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

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

答案 1 :(得分:21)

最好的方法是按照你的说法删除该类然后重新添加它,因为jQuery中没有“切换”类。

$('.dataItem').removeClass('ready').addClass('waiting');

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

$('.dataItem').removeClass('done waiting error').addClass('ready');