$(editor[i])[0].outerHTML
的值为:
<p style="color: red;" data-mce-style="color: red;">some string</p>
我希望
data-mce-style="color: red;"
消失。我这样做是这样的:
$(editor[i])[0].outerHTML.replace('data-mce-style="color: red;"', '');
但这并不能取代它。
最佳答案
.replace
创建一个新的转换后的字符串;它不会更改原始变量。您只是在创建一个新字符串,而不是将新字符串存储回outerHTML
中,例如:
$(editor[i])[0].outerHTML = $(editor[i])[0].outerHTML.replace('data-mce-style="color: red;"', '');
但是,这只能解决您的迫在眉睫的问题-有比字符串化和重新解析
<p>
元素更好的方法来完成所需的工作。由于您使用的是jQuery,因此最明显的方法是使用 removeAttr
方法:$(editor[i]).removeAttr('data-mce-style');