JQuery 1.3.2以上版本中出現pareseerror錯誤的解決方法
更新時間:2011年01月11日 01:48:45 作者:
最近正在做一個系統(tǒng),測試組那邊不停的報告bug:后臺、前臺各種列表報告js彈出窗錯誤,內容僅僅是一句“pareseerror”!
感覺很莫名奇妙,前一陣子還好好的,怎么現在就突然報錯了? 程序根本沒動。于是開始跟蹤分析,請求、返回的內容。。。最后判斷是jquery
不承認返回的內容是json格式。當時返回的內容是:
{'keylist':[
{'tid':'13',"sumnum':'1'},{'tid':'21','sumnum':'1'}
]}
經過仔細檢查也沒發(fā)現任何問題,返回流的字符已經設成utf-8,內容用ff檢測,ff也能識別成json格式,但此時還是報“pareseerror”錯誤。
看著看著代碼,突然發(fā)現,當前返回的內容,都是用英文單引號括起來的,依稀記得最嚴格的寫法應該用英文雙引號,于是立即修改系統(tǒng)底層庫(c#)
的json數據生成方法,全部改成英文雙引號,改后返回的內容如下:
{"keylist":[
{"tid":"13","sumnum":"1"},{"tid":"21","sumnum":"1"}
]}
結果放到測試服一試,問題解決! 我真&*^#%@$@
總結:仔細回想了一下,前些日子因為一些原因用jquery最新版本替換了團購系統(tǒng)中的舊版本,當時沒想到這種情況。后來從網上查到資料,jquery在1.3.x版本后對json的解析采取了更嚴格的方法,所以要求數據必須書寫的與國際規(guī)范一致。
不承認返回的內容是json格式。當時返回的內容是:
復制代碼 代碼如下:
{'keylist':[
{'tid':'13',"sumnum':'1'},{'tid':'21','sumnum':'1'}
]}
經過仔細檢查也沒發(fā)現任何問題,返回流的字符已經設成utf-8,內容用ff檢測,ff也能識別成json格式,但此時還是報“pareseerror”錯誤。
看著看著代碼,突然發(fā)現,當前返回的內容,都是用英文單引號括起來的,依稀記得最嚴格的寫法應該用英文雙引號,于是立即修改系統(tǒng)底層庫(c#)
的json數據生成方法,全部改成英文雙引號,改后返回的內容如下:
復制代碼 代碼如下:
{"keylist":[
{"tid":"13","sumnum":"1"},{"tid":"21","sumnum":"1"}
]}
結果放到測試服一試,問題解決! 我真&*^#%@$@
總結:仔細回想了一下,前些日子因為一些原因用jquery最新版本替換了團購系統(tǒng)中的舊版本,當時沒想到這種情況。后來從網上查到資料,jquery在1.3.x版本后對json的解析采取了更嚴格的方法,所以要求數據必須書寫的與國際規(guī)范一致。
相關文章
jQuery:delegate中select()不起作用的解決方法(實例講解)
本篇文章只要是對jQuery:delegate中select()不起作用的解決方法進行了詳細的介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-01-01CKEditor無法驗證的解決方案(js驗證+jQuery Validate驗證)
這篇文章主要為大家詳細介紹了CKEditor無法驗證的解決方案和jQuery Validate驗證框架,感興趣的小伙伴們可以參考一下2016-05-05jQuery?獲取與設置元素屬性的詳細方法(看完這篇文章就搞明白了)
這篇文章帶領大家熟練掌握?jQuery?的屬性方面的操作,包括固有屬性的獲取與設置,自定義屬性的獲取與設置等等,走進?jQuery?的更深層次階段,這也是腳本之家小編發(fā)現的一篇比較實用的文章2023-06-06