我正在使用从后端代码获取HTML内容的jquery ajax请求。如果状态正常,我将HTML内容附加到div。我正在使用以下代码来使用jquery ajax附加div。如$('#divElm').html(response.data);
。但经过附加我收到以下错误:SyntaxError使用jQuery.html插入包含脚本元素的HTML片段
SyntaxError: missing } in compound statement
HTML内容从后端渲染(即response.data)包含这是造成此错误的情况如下:
<script type="text/javascript">
function init() {
if(d.getElementById('normal')){
window.normalPop= d.getElementById('normal');
//complicated is local
var complicated= normalPop.parentNode.removeChild(normal);
d.getElementsByTagName('body')[0].appendChild(complicated);
}
}
addLoadEvent(init);
</script>
我不知道为什么这个错误“SyntaxError:missing} in compound statement”即将到来。}大括号在代码中正确关闭。
如果我使用innerHTML
而不是html()
它工作正常。渲染没有错误。
你的代码不显示任何jQuery - 是否缺少一些部分? – MarcoK
@MarcoK它存在 - '$('#divElm').html(response.data)',其中'response.data'被认为包含*发布代码的大部分。 – 2013-02-04 07:58:41
这是如何“太本地化”?这是Jquery中的一个常见问题 - 由于包含在其中的脚本,jquery可能会触发一个错误。解决方案是围绕'.html(...)'尝试一下。 – NoBugs