我有以下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');
但这似乎不起作用?
有什么想法吗?
答案 0 :(得分:38)
jQuery('#testID2').find('.test2').replaceWith('.test3');
从语义上讲,您选择ID为testID2
的元素,然后您正在寻找具有类test2
(不存在)的任何后代元素,然后您将用另一个元素替换该元素(页面中具有类test3
的任何位置的元素)也不存在。
你需要这样做:
jQuery('#testID2').addClass('test3').removeClass('test2');
这将选择ID为testID2
的元素,然后将类test3
添加到其中。最后,它从该元素中删除了类test2
。
答案 1 :(得分:5)
$('#testID2').addClass('test3').removeClass('test2');
jQuery addClass API参考
答案 2 :(得分:1)
试试这个
$('#testID').addClass('nameOfClass');
或
$('#testID').removeClass('nameOfClass');
答案 3 :(得分:0)
.....
$("#testID #testID2").removeClass("test2").addClass("test3");
因为你也为img分配了一个id,你也可以这样做:
$("#testID2").removeClass("test2").addClass("test3");
最后,你也可以这样做:
$("#testID img").removeClass("test2").addClass("test3");
答案 4 :(得分:0)
更正后的代码:
jQuery('#testID2').addClass('test3').removeClass('test2');