2012-03-23 56 views
0

我對使用jQuery進行編程非常新穎,我試圖從json文件中檢索JSON文件我在本地顯示數據並將其顯示在表中該網頁。我已經看過幾個不同的論壇,但迄今爲止我的所有代碼在螢火蟲中都有錯誤。使用json文件從服務器檢索json對象並在表格中顯示數據

我得到這個代碼的小片段,以返回任何東西最接近:

var vendor; 

$.ajax({ 
     async: true, 
     type: "POST", 
     url: "dataRetrieval.json", 
     data: "vendorId="+vendor, 
     success: function(json){  
       alert("Data retrieved: " + json); 
     } 
    }); 

當我跑了,我得到了如下的警告顯示: 的數據:[對象的XMLDocument]

我明顯錯過了這裏的東西,如果有人能夠幫助我在這裏,將非常感激。

回答

0

驗證您的JSON是否有效 - >http://www.jsonlint.com 我猜你的JSON有多個數據。

HTML

<table id="table"></table> 

jQuery的

$.getJSON("dataRetrieval.json",function(data){ 
    $.each(data,function(index, d){ 
     //append data to your table as rows 
     $('#table').append(
      '<tr>' + 
       '<td>' + d.row1entry1 
       '<\/td>' + 
       ........ 
      '<\/tr>' 
     );   
    }); 
}); 
+0

感謝@aki爲您的快速反應!當我做這個代碼片段我得到的螢火以下錯誤: 後的參數列表 [打破這個錯誤] \t 「<\/td>」 + 「/代碼」 我嘗試「代碼」 缺失)谷歌搜索它但無濟於事(或至少我能夠理解)。有任何想法嗎? – user1288091 2012-03-23 11:24:44

+0

我得到了這個工作!非常感謝你的幫助!!!我要記住的一件事是,如果你有多行,你必須在每個'<\/tr>'的末尾添加'+'。 – user1288091 2012-03-23 16:55:00

1

只需添加一個dataType:'json'和你應該確定:

$.ajax({ 
    async: true, 
    type: "POST", 
    url: "dataRetrieval.json", 
    data: "vendorId="+vendor, 
    dataType: 'json', 
    success: function(json){ 
     alert("Data retrieved: " + json); 
    } 
}); 

還檢查了$.getJSON()。另外,您可以考慮將data屬性作爲字典傳遞:data: {vendorId: vendor},它更靈活一點,並且在處理用戶輸入時不會暴露給編碼問題(例如,如果用戶在名稱字段中輸入「Jack & Jill」它將正確地逃脫那&標誌)。

+0

感謝您的快速反應,但是當我這樣做,我只是得到以下警告:獲得的數據:[對象的對象] 我很新編程和可能超出我的知識基礎,但只是對此感到好奇。 – user1288091 2012-03-23 11:14:21

相關問題