如何處理json中的特殊字符?
1. 回車問題 json傳值的時(shí)候,如果有回車符就會掛的。我們可以使用正則來去掉回車符:
2. HTML特殊字符 從服務(wù)器端以JSON格式將數(shù)據(jù)傳遞到客戶端后,通過JS顯示在HTML頁面時(shí),有一些特殊字符不能直接顯示,如后臺傳遞過來的是 'msg #' 通過JS顯示在HTML頁面中時(shí),顯示成了 msg # ,并不是msg #,這是由于之間的內(nèi)容看作是HTML標(biāo)簽了,而以&開頭的 與#為HTML實(shí)體,所以顯示不正常。 解決辦法很簡單,在JS將其渲染到HTML頁面前轉(zhuǎn)換一下即可:
3. escape()函數(shù) 該函數(shù)可以處理空格、斜線和其他任何可能影響瀏覽器的內(nèi)容,并將它們轉(zhuǎn)換成 Web 可用字符(比如,空格會被轉(zhuǎn)換成 %20,瀏覽器并不會將其視為空格處理,而是不做更改,將其直接傳遞到服務(wù)器)。之后,服務(wù)器會(通常自動)再把它們轉(zhuǎn)換回它們傳輸后的本來 “面目”。
4. 引號問題 JSON中如果包含引號或雙引號,會破壞JSON的格式。有兩種方法可以解決。 在入庫的時(shí)候可以使用addslashes()函數(shù)處理一下字符串,給引號前加上斜杠。被改的字符包括單引號 (')、雙引號 (")、反斜線 backslash (\) 以及空字符NULL。