我真的一直在尋找近2個小時,還沒有找到一個很好的例子來說明如何將JSON數據從PHP傳遞給JS。我在PHP中有一個JSON編碼腳本,它回顯了一個JSON腳本,看起來或多或少像這樣(僞代碼)。如何從PHP到JS獲取JSON?
{
"1": [
{"id":"2","type":"1","description":"Foo","options:[
{"opt_id":"1","opt_desc":"Bar"},
{"opt_id":"2","opt_desc":"Lorem"}],
{"id":"3","type":"3","description":"Ipsum","options:[
...
"6":
{"id":"14","type":"1","description":"Test","options:[
...
etc
問題是,我該如何使用JavaScript獲取這些數據?我的目標是製作一個基於這些JSON數據生成投票的.js腳本,但我誠實地向上帝找不到有關如何執行此操作的任何示例。猜測它是這樣的:
Obj jsonData = new Object();
jsonData = $.getJson('url',data,function()){
enter code here
}
任何好的例子或類似的鏈接將不勝感激。我認爲,在PHP中的數據進行編碼是最棘手的部分...
編輯:
我得到這個代碼段的工作,這樣我就可以在JS審查我的整個JSON數據。但是現在我似乎無法弄清楚如何獲得內部數據。它確實打印了階段編號(1-6),但我無法弄清楚如何獲取問題數據,然後再次查看每個問題中的選項數據。我是否必須嘗試嵌套每個循環?
$(document).ready(function()
{
$('#show-results').click(function()
{
$.post('JSAAN.php', function(data)
{
var pushedData = jQuery.parseJSON(data);
$.each(pushedData, function(i, serverData)
{
alert(i);
})
})
})
});
這裏的想法是進入處於中等水平的問題信息,並打印出qusetion描述,然後根據問題類型 - 通過選項循環(如果有的話)創建複選框/單選,組然後再討論下一個問題。第一個數字代表我目前正在進行的多階段民意調查的哪個階段。我的計劃是通過隱藏/顯示各種div直到通過Ajax提交表單的最後一頁,將它分成6個階段。
這是deffo我需要什麼,我只需要使它工作的xD試圖把裏面的getJSON警報,但它永遠不會被激活。 – Tom 2012-07-17 06:48:11
我認爲在函數(jsonData)){}中有一個括號錯誤,應該是函數(jsonData){no?不能讓任何一個人工作,只是要錘擊它一段時間:) – Tom 2012-07-17 06:49:08
是啊,你是正確的額外括號:) – Leon 2012-07-17 07:15:33