2012-09-22 24 views
1

我有一個問題,我無法弄清楚。我有通過多維數組像這樣的環的AJAX成功函數:如何使用jquery中的數組填充表格?

function onSuccessClientCustomerData(data) { 
    // Count length of object 
    var count = 0; 
    for (i in data) { 
     if (data.hasOwnProperty(i)) { 
      count++; 
     } 
    } 

    // Fetch data 
    var arr = new Array(data.variable0, data.variable1, data.variable2, data.variable3, data.variable4); 
    for(var i = 0; i< count; i++) { 
     var variable = $.parseJSON(arr[i]); 

    } 
} 

我各陣列具有三個鍵,我想填充TD:當量(1)〜TD:當量(2)在每行上:

<table id="test"> 
<tr> 
    <td><input type="text"></td> 
<td class="outputName">-</td> 
    <td class="outputRating">-</td> 
<td class="outputTurnover">-</td> 
</tr> 
<tr> 
    <td><input type="text"></td> 
<td class="outputName">-</td> 
    <td class="outputRating">-</td> 
<td class="outputTurnover">-</td> 
</tr> 
</table> 

我該怎麼做。我已經嘗試了每個功能索姆,但無法得到它的工作!

將不勝感激任何幫助或參考閱讀!

謝謝!

編輯/這裏是我的解決方案

function onSuccessClientCustomerData(data) { 
    // Count length of object 
    var count = 0; 
    for (i in data) { 
     if (data.hasOwnProperty(i)) { 
      count++; 
     } 
    } 

    // Fetch data 
    var arr = new Array(data.variable0, data.variable1, data.variable2, data.variable3, data.variable4); 
    for (var i = 0; i < count; i++) { 
     var arr_j = $.parseJSON(arr[i]); 
     $("#row" + i + " .key0").html(arr_j.name); 
     $("#row" + i + " .key1").html(arr_j.rating); 
     $("#row" + i + " .key2").html(arr_j.percentOfTotalIncome); 
    } 
} 

回答

2

在需要插入值的地方你需要幫助嗎?如果是這樣的:

jQuery代碼

function onSuccessClientCustomerData(data) { 
    // Count length of object 
    var count = 0; 
    for (i in data) { 
     if (data.hasOwnProperty(i)) { 
      count++; 
     } 
    } 

    // Fetch data 
    var arr_i = new Array(data.variable0, data.variable1, data.variable2, data.variable3, data.variable4); 
    for (var i = 0; i < count; i++) { 
     var arr_j = arr_i[i]; 
     for (var j = 0; j < arr_j. length; j++) { 
      $("#row" + i + " .key" + j).html(arr_j[j]); 
     } 
    } 
} 

HTML代碼

<table id="test"> 
    <tr id="row0"> 
    <td><input type="text"></td> 
    <td class="key0" class="outputName">...</td> 
    <td class="key1" class="outputRating">...</td> 
    <td class="key2" class="outputTurnover">...</td> 
    </tr> 
    <tr id="row1"> 
    <td><input type="text"></td> 
    <td class="key0" class="outputName">...</td> 
    <td class="key1" class="outputRating">...</td> 
    <td class="key2" class="outputTurnover">...</td> 
    </tr> 
</table> 

測試代碼

我測試了Chrome瀏覽器的代碼,它工作得很好。下面是重現它的步驟: - 使用F12

  • 打開元素窗格,請執行以下操作:

    1. HTML部分添加到網頁;
    2. 可選擇添加邊框和一些邊距以使其更清晰;

      1. 給:使用按Ctrl ++Ĵ並執行以下操作


  • 打開Web控制檯0(我們將使用的是代替data)的佔位符值:

    var arr_i = new Array([00, 01, 02], [10, 12, 13]); 
    
  • 運行代碼來設置count

    // Count length of object 
         var count = 0; 
         for (i in data) { 
          if (data.hasOwnProperty(i)) { 
           count++; 
          } 
         } 
    
  • 用我的功能來添加值(一定要在使用jQuery的頁面上運行代碼!否則,使用this bookmark):

    for (var i = 0; i < count; i++) { 
        var arr_j = arr_i[i]; 
        for (var j = 0; j < arr_j. length; j++) { 
         $("#row" + i + " .key" + j).html(arr_j[j]); 
        } 
    } 
    

,瞧!這也許應該給我拿今天20至30票通過明天本週明年(希望)...

+0

當我到我的電腦時會嘗試!謝謝! – Ismailp

+0

@Ismailp爲此付出了努力,至少? :) –

+0

@Ismailp測試代碼。爲我工作得很好。 –

0
function onSuccessClientCustomerData(data) { 
    var data = $.parseJSON(data); 
    .... 
} 

您需要先分析數據。

+0

看看成功的功能。它已經被解析。我得到的數據,但我想知道如何填充表 – Ismailp

相關問題