2012-03-23 26 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

相关问题