我在做什么:
我正在存储结构如下的 (MySQL) 格式化文本:
I'm Robert (I'm = I am)<br>You're in France (You're = You are)<br><br><strong></strong><span class="st">?</span> <b>I</b>'m Robert <br>? Am Robert <del> <br></del><br>? <b>You</b>'re Robert <br>? Are Robert <br><br>I'm = I am<br>You're = ___ ___?<br><br><br><br>
我正在尝试从数据库中检索此字符串,然后将其附加到这样的 WYSIWYG 编辑器中。
function enableEditMode(){
card_content.document.designMode = 'On';
$('iframe[name=card_content]').contents().find('body').append("I'm Robert (I'm = I am)<br>You're in France (You're = You are)<br><br><strong></strong><span class="st">?</span> <b>I</b>'m Robert <br>? Am Robert <del> <br></del><br>? <b>You</b>'re Robert <br>? Are Robert <br><br>I'm = I am<br>You're = ___ ___?<br><br><br><br>");
}
我收到以下错误:
SyntaxError: 缺少 ) 参数列表后
我认为这是因为 "" 引号引起了问题。
问题:
如何将 HTML 附加到 DOM 中而不会出现这样的语法错误?
我认为您需要转义单引号或双引号:
function addslashes( str ) {
return (str + '').replace(/[\\"']/g, '\\$&').replace(/\u0000/g, '\\0');
}
或者您在服务器端转义字符串并返回转义的字符串。因此,结果应该是这样的:
"this is a test, isn\'t it great! <span class=\"test\">Test</span>"
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句