27

我有以下 HTML

<div id="testID" class="test1">
        <img id="testID2" class="test2" alt="" src="some-image.gif" />
    </div>

我基本上想到达 #testID2 并用 .test3 类替换 .test2 类?

我试过

jQuery('#testID2').find('.test2').replaceWith('.test3');

但这似乎不起作用?

有任何想法吗 ?

4

5 回答 5

46
jQuery('#testID2').find('.test2').replaceWith('.test3');

从语义上讲,您正在选择具有 ID 的元素testID2,然后您正在寻找具有该类的任何后代元素test2(不存在),然后您将该元素替换为另一个元素(页面中任何位置的元素与该类test3)不存在。

你需要这样做:

jQuery('#testID2').addClass('test3').removeClass('test2');

这将选择具有 ID 的元素testID2,然后将类添加test3到其中。test2最后,它从该元素中删除类。

于 2010-03-09T07:06:05.163 回答
8
$('#testID2').addClass('test3').removeClass('test2');

jQuery addClass API 参考

于 2010-03-09T07:05:24.307 回答
4

试试这个

$('#testID').addClass('nameOfClass');

或者

$('#testID').removeClass('nameOfClass');
于 2010-03-09T07:04:38.193 回答
0

......

$("#testID #testID2").removeClass("test2").addClass("test3");

因为您也为 img 分配了一个 id,所以您也可以简单地执行此操作:

$("#testID2").removeClass("test2").addClass("test3");

最后,您也可以这样做:

$("#testID img").removeClass("test2").addClass("test3");
于 2010-03-09T07:07:50.230 回答
0

更正的代码:

jQuery('#testID2').addClass('test3').removeClass('test2');
于 2013-06-18T10:52:57.723 回答