被嚴重形成JSON。它應該是這樣的:
{images: [{
"img": "img1.jpg",
"img": "img2.jpg",
"size": [52, 97]
},
{
"img": "img3.jpg",
"img": "img4.jpg",
"size": [52, 97]
}]
}
這就是爲什麼你有麻煩解析它。
如果您無法控制它,但您知道它將採用類似的形式,您可以使用jQuery.ajax
,然後通過一些字符串操作或其他方式將其轉換爲有效的JSON。可能不理想,但是這是唯一可以做的事情,因爲你無法控制返回的JSON。
另請注意,您有兩個具有相同名稱的密鑰。這是另一個問題。
爲了解決這個問題,你可能要像下面這樣:
{images: [{
"img1": "img1.jpg",
"img2": "img2.jpg",
"size": [52, 97]
},
{
"img3": "img3.jpg",
"img4": "img4.jpg",
"size": [52, 97]
}]
}
或
{images: [{
"img": ["img1.jpg", "img2.jpg"],
"size": [52, 97]
},
{
"img": ["img3.jpg", "img4.jpg"],
"size": [52, 97]
}]
}
我想一個更好的辦法是這樣的:
{images: [{
img: "img1.jpg",
size: [52, 97]
},
{
img: "img2.jpg",
size: [52, 97]
},
{
img: "img3.jpg",
size: [52, 97]
},
{
img: "img4.jpg",
size: [52, 97]
}]
}
就像我之前提到的那樣,由於您無法控制JSON,因此您可以做的事情很少。如果可以,我會建議與該網站的管理員/開發人員交談。他們確實需要被告知他們沒有返回有效的JSON。
您提供的代碼段無效JSON。 – 2010-04-23 20:58:44
我不能相信源會發出那個假的JSON。我會立即將其報告給相關Web服務的管理員/開發人員。讓他們修復它,以便您(和所有其他用戶)以正確的方式使用它。 – BalusC 2010-04-23 21:07:17