$.ajax返回的JSON格式的數據后無法執行success的解決方法


  近段時間做項目,在項目使用了ajax技術,遇到了一個奇怪的問題:"$.ajax返回的JSON格式的數據無法執行success",代碼是這樣寫的:

 1 $.ajax({ 
 2 .. 
 3 dataType:'json', 
 4 ... 
 5 success:function(jsonData){ 
 6 //不執行success 
 7 }, 
 8 error:function(error){ 
 9 //總是執行這個error 
10 } 
11 });

  百思不得其解啊,為什么會這樣子呢?檢查了一下返回的JSON字符串,我覺得JSON字符串的格式應該沒有問題的,於是在網上查了一下,發現有還真有人遇到了和我一樣的問題,找出原因所在"是因為我指定了dataType:'json',這樣指定之后,對Json格式的要求就非常嚴格起來了,起初我的json格式是這樣寫的:"{result:{\"success\":\"true\",\"meg\":\"success\"}}",可這樣寫不行,得改成這樣寫:"{\"success\":true,\"mesg\":\"success\"}",如果說是bool類型,則不用加引號,其它的鍵/值都需要加引號。jquery 1.4以后對json格式變嚴格了,也就是說必須要這種格式的{"鍵":"值","鍵":"值"};像原來的{鍵:值,鍵:值}和{'鍵':'值','鍵':'值'}這種都是錯誤的,不合標准,所以jquery返回error。以前沒有注意到這樣的問題,這次遇到了,也找到了解決辦法,在此記錄一下!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM