2016-11-30 125 views
0

所以我試圖用腳本中的數據填充表。我已經嘗試了很多改變參數等,但似乎無法讓它工作。這是我到目前爲止:使用jQuery和Ajax填充json數據表

$(document).ready(function() { 
     $.get(file + '?op=retrieve&page=1', function (data) { 
      $.each(data, function (i, elem) { 
       $('#mainTable').append(
        '<tr><td>' + elem.name + '</td><td>' + elem.address '</td></tr>' 
       ) 
      }) 
     }) 

我目前得到的錯誤:TypeError:e不是一個對象。 (評價 'T-1中E')

赫雷什JSON數據的一個例子:

{"id":"348141","name":"Birdies","address":"Bridge Street, Tunbridge Wells, TN1 1AH"}] 
+0

告訴我們從不用彷徨調用檢索數據的結構。 –

+0

就像@MisterPositive一樣,向我們展示從.get調用中檢索到的數據的模擬,其他的事情,您可以在$ .each行中放置一個斷點並查看數據中的內容 – Hatim

+0

@MisterPositive請參閱編輯:) – JL9

回答

0

從你的數據,我明白你得到JS對象的數組。

如果你看到你的js代碼,您使用的是下面的代碼片斷

$。每次(數據,功能(I,ELEM){ });

所以從上面的代碼中,「i」是索引,elem是當前迭代值。

所以elem.name [i]將是無效的。這是因爲elem本身是一個具有名稱屬性的對象,名稱只是字符串類型。所以你不能有名字[我]。

$(document).ready(function() { 
     $.get(file + '?op=retrieve&page=1', function (data) { 
      $.each(data, function (i, elem) { 
       $('#mainTable').append(
        '<tr><td>' + elem.name + '</td><td>' + elem.address '</td></tr>' 
       ) 
      }) 
     }) 

我認爲「mainTable」元素看起來像這樣

<table> 
<tbody id="mainTable"> 
</tbody> 
</table>