使用Ajax渲染具有多个tbody元素的HTML表

时间:2013-11-26 00:40:05

标签: javascript html ajax

我正在尝试使用Ajax数据有效负载在html中呈现表。 ajax数据结构如下: -

{"id":733,
 "lastUpdatedBy":"4",
 "lastUpdatedTime":"2013-11-24 03:00:03PM",
 "jobName":"jobnameA",
 "accountName":"accountname1A"
} 

要呈现的表的Html如下: -

    <table id="main_table">
       <thead>
        <tr class="firstline">
        <th>Column1</th>
        <th>Column2</th>
        <th>Column3</th>
     </tr>
    </thead>
     <tbody>
     <tr style="background-color:green; color:white">
        <td  colspan="4" class="flip" id="fisrtsec"> Test Account 19 </td>
     </tr>
    </tbody>
    <tbody class="section">
    <tr>

        <td>item id</td>
        <td>item jobName</td>
        <td>item accountName</td>

    </tr>
    <tr>
    <td></td>
        <td>item 121</td>
        <td>item 122</td>
        <td>item 123</td>
        <td>item 124</td>
     </tr>
     <tr>
      <td></td>
        <td>item 131</td>
        <td>item 132</td>
        <td>item 133</td>
        <td>item 134</td>
      </tr>
     </tbody>
     <tbody>
     <tr style="background-color:green; color:white">
        <td  colspan="4" class="flip"> Section 2 </td>
     </tr>
   </tbody>
   <tbody class="section">
    <tr>
     <td></td>
        <td>item 211</td>
        <td>item 212</td>
        <td>item 213</td>
        <td>item 214</td>
     </tr>
     <tr>
     <td></td>
        <td>item 221</td>
        <td>item 222</td>
        <td>item 223</td>
        <td>item 224</td>
     </tr>
      <tr>
     <td></td>
        <td>item 231</td>
        <td>item 232</td>
        <td>item 233</td>
        <td>item 234</td>
       </tr>
    </tbody>

    </table>

使用Jquery库。我的jquery是

 $.each(data, function(key, val) {
    $('<tr><td>ID: '+key+'</td><td id="'+key+'">'+val+'</td>   
  <tr>').appendTo('#main_table');
     });

感谢任何帮助。谢谢你的期待。

1 个答案:

答案 0 :(得分:0)

我不认为多个tbody是有效的标记。话虽如此,试试。

('<tr><td>ID: '+key+'</td><td id="'+key+'">'+val+'</td><tr>')
  .appendTo('#main_table tbody:last');

使用:last将附加在表的末尾。