2014-03-27 91 views
3

有些奇怪,我不明白。Javascript:未終止的字符串文字

我的代碼:

$("#loadbtn").click(function(e) { 
    $html = '<script src="http://netdna.bootstrapcdn.com/bootstrap/3.0.3/js/bootstrap.min.js"></script> dsfdsf'; 
    $("#content").html($html); 
}); 

當我運行在瀏覽器頁面,則返回錯誤說SyntaxError: unterminated string literal。我看不到任何錯誤。你能告訴我那裏有什麼問題嗎?

謝謝。

+0

是你的$ HTML變種定義? – Flasz

回答

5

</script>總是拋出奇怪的錯誤在JavaScript,因爲它實際上是關閉當前的腳本,即使在一個字符串,嘗試分裂它

$html = '<script src="http://netdna.bootstrapcdn.com/bootstrap/3.0.3/js/bootstrap.min.js"></scr'+'ipt> dsfdsf'; 
+1

你看到的另一個常見的是'<\/script>',JavaScript被認爲是'',但瀏覽器沒有。或者更好的是,將代碼放在一個單獨的'.js'文件中。 :-) –

+0

@ T.J.Crowder - 或創建腳本元素,並將其插入頭部。 – adeneo

+0

@ adeneo:的確如此,但一般情況是,如果代碼「」標籤之間不是*本身*,那麼代碼將非常好。例如,如果它在一個外部的'.js'文件中,它會很好,並按需要工作。你只需要擔心''帶有腳本標記直接包含的代碼,而不是從一個引用的文件中。 –

相關問題