2012-11-04 70 views
0

我試圖通過使用雅虎管道和jQuery來更新一個表與即將到來的事件從一個不同的域來手動更新工作。我創建了this Pipe來收集數據,並且它似乎正常工作。通過雅虎通過管道生成JSON與jQuery失敗

現在我讀有以下jQuery腳本的JSON文件從this tutorial採取:

$.ajax({ 
type: "GET", 
url: "http://pipes.yahoo.com/pipes/pipe.run?_id=57aa32bf3481c8dca0c07afcf9b9dc29&_render=json", 
async: false, 
beforeSend: function(x) { 
    if(x && x.overrideMimeType) { 
    x.overrideMimeType("application/j-son;charset=UTF-8"); 
    } 
}, 
    dataType: "json", 
    success: function(data){ 
    $('body').append(data.query.results.a.content); 
} 
}); 

jQuery的追加失敗,系統我猜是因爲「data.query.results.a.content」不涉及好轉換爲由管道創建的JSON結構。

我試過用幾種方法改變管道和附件​​,我只是簡單地放棄,我會非常感謝您的輸入。

回答

1

認爲你錯誤地解析了json結果。

上觀看這裏http://jsonviewer.stack.hu/

JSON對象你會看到內容節點每個項目value.items[0].a.content

即嘗試這樣的事:

$('body').append(data.value.items[0].a.content); 

您需要迭代像這樣的物品陣列

$.each(data.value.items, function(index,element) { 
    $('body').append(element.a.content); 
}); 

嘗試在小提琴:http://jsfiddle.net/EFvJf/

+1

我認爲這幾乎是我一直在尋找。非常感謝!另外,感謝您將我指向jsonviewer和jsfiddle,我認爲這將有助於trevendeously。 –

+1

高興地幫助:)也使用使用螢火蟲和鉻開發工具..這些偉大的網頁開發http://getfirebug.com/和https://developers.google.com/chrome-developer-tools/。 IE也有開發者工具欄..也看到關於SO的問題http://stackoverflow.com/questions/203991/what-tool-to-use-for-javascript-development – Amitd

+1

小小更新:讓它按照預期工作,謝謝再次! –