我想從jQuery獲得一個Ajax調用,以返回由PHP生成的JavaScript數組,但無法獲取它。下面是我在做什麼:jQuery:從Ajax回調JavaScript數組返回
我運行下面的代碼的onLoad:
$(function() { jQuery.ajax({ url: 'retrieve.php', success: function(data) { }, async: false }, "script");
retrieve.php返回以下(retrieve.php做的格式,並呼應出來):
var data = { "info" : [{ "title": "Title", "description": "Description" }], "playlist" : [ { "title": "In This Place", "subTitle": "Excalibur", "href": "http://localhost/manger/ny/#desemberkonsert_in-this-place", "url": "../flv/desemberkonsert/21_in_this_place.flv", "thumbnail": "../flv/desemberkonsert/21_in_this_place_thumbnail.png", "time": "5:39" }, { "title": "Black Hole", "subTitle": "Excalibur", "href": "http://localhost/manger/ny/#desemberkonsert_black-hole", "url": "../flv/desemberkonsert/22_black_hole.flv", "thumbnail": "../flv/desemberkonsert/22_black_hole_thumbnail.png", "time": "4:26" }] }
然後我嘗試使用例如訪問此代碼:
$("#placeholder").text(data.playlist[0]["title"]);
- 這將返回爲「未定義」
陣列不允許工作時,我複製並直接粘貼到文件,但是當一個回調返回失敗。我如何訪問返回的數組?
爲什麼不把它作爲JSON返回?此外,您的PHP將不得不設置適當的內容類型標題 – jerluc 2011-02-05 19:47:09
我試着將它切換到json的ajax調用(也從retrieve.php中刪除'var data ='),我將它設置爲content-type ? json有特定的嗎? – OleVik 2011-02-05 20:39:28