我正在尝试替换嵌套div中的一些文本。但是,replace函数返回unrecognized expression
。我尝试过很多东西,但我无法让它发挥作用。
<div id="gui-checkout-shipment-methods">
<div class="some-other-div">.... html content ....</div>
<div class="gui-spacer"></div>
* zzgl. Bei Lieferungen in das Nicht-EU-Ausland fallen zusätzliche Zölle, Steuern und Gebühren an
</div>
所以我正在尝试替换该文本字符串* zzgl. Bei Lieferungen in das Nicht-EU-Ausland fallen zusätzliche Zölle, Steuern und Gebühren an
所以我尝试的是选择那样的文字:
var content = $('#gui-checkout-shipment-methods').contents().filter(function() {
return this.nodeType == 3;
}).text();
然后用一个新字符串替换该字符串,如下所示:
$(content).text(content.replace('* zzgl. Bei Lieferungen in das Nicht-EU-Ausland fallen zusätzliche Zölle, Steuern und Gebühren ', 'zzgl. zusätzliche Zölle, Steuern und Gebühren, welche bei Lieferungen in das Nicht-EU-Ausland anfallen'));
这会返回错误:
Error: Syntax error, unrecognized expression: * zzgl. Bei Lieferungen in das Nicht-EU-Ausland fallen zusätzliche Zölle, Steuern und Gebühren an
我认为这与被视为html的字符串有关?或者我犯了一个愚蠢的错误?
非常感谢任何帮助。
答案 0 :(得分:1)
请尝试使用.html()
:
var $myEl = $('#gui-checkout-shipment-methods');
$myEl.html($myEl.html().replace('* zzgl. Bei Lieferungen in das Nicht-EU-Ausland fallen zusätzliche Zölle, Steuern und Gebühren ', 'zzgl. zusätzliche Zölle, Steuern und Gebühren, welche bei Lieferungen in das Nicht-EU-Ausland anfallen'));