Javascript 使用具有相同内部html的jquery选择所有类

Javascript 使用具有相同内部html的jquery选择所有类,javascript,jquery,Javascript,Jquery,我需要能够基于该类的innerHTML更改该类的innerHTML,但是,该类的文本不同于常规文本(有自己的css等等),它需要保留这些属性,因此我不能使用text()我有 <span class="special">John</span> 约翰 我需要将所有具有特殊属性的类以及John的innerHTML更改为Jack 然而,无论出于何种原因 $("[special='John']").html('<span class="special">Jack&l

我需要能够基于该类的innerHTML更改该类的innerHTML,但是,该类的文本不同于常规文本(有自己的css等等),它需要保留这些属性,因此我不能使用text()
我有

<span class="special">John</span>
约翰 我需要将所有具有特殊属性的类以及John的innerHTML更改为Jack

然而,无论出于何种原因

$("[special='John']").html('<span class="special">Jack</span>');
$(“[special='John']”)html('Jack');
它不起作用。我肯定这只是一个愚蠢的错误,但请提前谢谢你。

像这样吗

$(".special:contains('John')").html('Jack');
或者,如果文本需要等于,而不是包含:

$('.special').filter(function() {return $(this).text() == "John";}).html('Jack');

“John”不是一个属性,而是元素的内容()。请澄清。DOM选择不是基于“HTML”完成的。类只是元素的一个属性。元素的CSS不是类文本的一部分。“special”是class属性的值。你的尝试看起来更像是猜测。这不是一种正确的学习方法。