JS獲取后台返回的JSON數據


問題:通過$.get從后台獲取了一段json串{"id":"1","name":"ww"},然后要拿到這里面的id和name值

$.get(url,
     function(data) {
    alert("ID:" + data.id + "\nName:" + data.name);
     });

直接這樣寫的話,界面會alert提示undefined,所以應該是沒能正確解析返回的串

解決方案:

1、需要用eval函數將返回的串轉化成可用的strig串,eval(data),但是因為原串里面是以{}開始和結束的,會被認為是可執行方法,因此需要加上()包圍起來,var jsonobj=eval("("+data+")"),然后再alert("ID:" + jsonobj.id + "\nName:" + jsonobj.name);就能正常顯示了

2、獲取的時候就直接表示返回的是json格式,用$.getJSON代替$.get,其他代碼不變,也能正常獲取。

 

成功解決問題,雖然很簡單的需求,但是可能自己寫出來,會遇到問題


免責聲明!

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



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