内联脚本呈现为文本内容

时间:2013-05-27 09:04:51

标签: javascript jquery html ajax inline-code

我将DOM对象作为HTML字符串给出,并通过AJAX使用jQuery方法replaceWith()插入到HTML页面中。 HTML字符串包含<div>元素和内联<script>,jQuery命令如下所示:

$('#foo').replaceWith('<div>Some Content</div><script>someJavaScriptFunction();</script>');

执行此AJAX后,<div>元素正确呈现,<script>内的脚本正常工作,但除此之外,内联<script>的内容为在页面上逐字呈现。为什么会这样?我怎么能避免这个?当我在Chrome开发人员工具上看到相应的部分时,内联脚本只出现一次(这就是我的意图)。

1 个答案:

答案 0 :(得分:3)

您需要转义关闭/代码的script正斜杠。

<强> Live Demo

$('#foo').replaceWith('<div>Some Content</div><script>someJavaScriptFunction()<\/script>');