我正在使用從後端代碼獲取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