今天在做JAVASCRIPT的時(shí)候,發(fā)現(xiàn)老是出現(xiàn)”未結(jié)束的字符串常量”.
自己找了下應(yīng)該是傳參數(shù)的時(shí)候,有特殊字符引起的.網(wǎng)上也找了下,也有好多出現(xiàn)這種情況.做下總結(jié),以方便以后查閱.
1.JAVASCRIPT引用時(shí),使用的字符語(yǔ)言不一致.
比如:<script type=”text/javascript” src=”xxx.js” charset=”UTF-8″>.xxx.js文件內(nèi)部使用的是GB2312的格式,外面調(diào)用使用的是UTF-8,所以文件內(nèi)部部分特殊字符因?yàn)楦袷讲灰恢?出現(xiàn)亂碼,造成此原因.
2.JAVASCRIPT輸出HTML字符時(shí),前后標(biāo)記不匹配.
這種比較常見(jiàn),往往在輸出字符串時(shí),出現(xiàn)單引號(hào)(’)或雙引號(hào)(”)不配對(duì),或者是在document.write()的時(shí)候,沒(méi)有正確輸出單引號(hào)(’)或雙引號(hào)(”)
3.參數(shù)內(nèi)出現(xiàn)HTML標(biāo)記語(yǔ)言或包含換行符
我今天所遇到的是這種情況.因?yàn)槲宜玫降臄?shù)據(jù)以參數(shù)形式傳給一函數(shù),結(jié)果該數(shù)據(jù)里包含換行符,造成了此錯(cuò)誤.
如:一般測(cè)試時(shí)只使用單行的數(shù)據(jù),是正常的,未出現(xiàn)這個(gè)錯(cuò)誤,.
當(dāng)測(cè)試時(shí)使用多行數(shù)據(jù),并使用回車(chē)鏈換行,就出行了此錯(cuò)誤.因?yàn)槔锩姘藫Q行符
對(duì)于第3種情況,我的解決方法是:不直接將該數(shù)據(jù)以參數(shù)形式傳遞,而是先將其賦值在一個(gè)隱藏的文本內(nèi),需要調(diào)用的函數(shù)里只需讀取該文本里的內(nèi)容即可.
轉(zhuǎn) http://www.javaeye.com/topic/400721