2012-11-12 23 views
0
var list =["<script></script>", "A", "B", "C"] 

我在這裏得到了意外的令牌ILLEGAL錯誤。說,如果我確實需要包含腳本標記,但只是純文本,我如何格式化列表。謝謝!意外的令牌非法JavaScript中的陣列

+0

究竟不起作用?這應該在瀏覽器中執行得很好。 – wsanville

+0

瀏覽器正在對其進行修改。將「腳本」字符串分解爲兩個concact peices。 – asawyer

回答

6

如果您使用的是聯腳本,然後</script>將在數組構造的中間終止腳本元素(所有的HTML的元素中的文本節點之前解析傳遞給JS引擎,</script>在JS字符串文字中沒有特別的處理)。

逃離/

var list =["<script><\/script>", "A", "B", "C"] 

您還可以將文件移到外部文件和src它。

  1. 即與JS一個<script>元件直接在其內部,而不是一用一src屬性或類似onclick固有事件屬性。
+0

我試圖用這一個,現在的:var列表= [" <腳本> < /腳本> ","一個","乙","Ç"],它給我的「意外令牌」的錯誤。任何進一步的解釋爲什麼這不起作用?謝謝! – sammiwei

3

替換

var list =["<script></"+"script>", "A", "B", "C"] 

"</script>"結束了在你有你的腳本中的腳本元素。

+0

將字符串拆分爲兩部分並將它們連接在一起的效率稍差,並且只是轉義'/'的可讀性較差。 – Quentin

2

需要躲避</script>"標籤

<\/script>" 

var list =["<script><\/script>", "A", "B", "C"]; 

否則,它傾向於把它作爲腳本標籤的末尾..