[英]Parsing json with Javascript throwing Uncaught TypeError
[英]JSON Throwing Error on Parsing
這是我擁有的JSON字符串。 我已經從JSON中刪除了左括號和右括號,因為我需要使用jQuery中的JSON值將數據實際加載到選擇框中:
{
"text": "Pediatric FA, CPR & AED (2015)",
"id": "128177000002431552~Pediatric FA, CPR & AED DVD Set (2015)~YES~117.19"
}, {
"text": "FA, CPR & AED Manual (2015)",
"id": "128177000002431564~FA, CPR & AED Manual (2015)~YES~17.73"
}
這是我的Javascript代碼
$.post("items.cfm",{"term":request.term})
.done(function(data){
try{
var obj = JSON.parse(data),
values = [];
$.each(data, function(i, obj) {
values.push({"label":obj[x].text, "value":obj[x].id, "price":obj[x].id.split('~')[3]});
})
response(values);
}catch(e){
alert(e);
}
})
.fail(function(e){
alert(e);
});
每次我運行它時,我都會得到錯誤
SyntaxError:意外的令牌,位於JSON中的位置
您有兩個JSON對象,以逗號分隔。 如果您希望這是一個數組,則需要用數組括號將其包圍:
[
{
"text": "Pediatric FA, CPR & AED (2015)",
"id": "128177000002431552~Pediatric FA, CPR & AED DVD Set (2015)~YES~117.19"
}, {
"text": "FA, CPR & AED Manual (2015)",
"id": "128177000002431564~FA, CPR & AED Manual (2015)~YES~17.73"
}
]
附帶說明一下,如果您的服務器生成無效的JSON,則應仔細查看生成JSON的代碼。 可能有一些代碼試圖手動生成此字符串,這是一種不好的做法。 服務器應使用庫將返回的值轉換為JSON。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.