2012-08-14 84 views
1

我使用下面的jQuery代码将追加到我的表:jQuery的追加到表TR

 $("tbody#order_details").append('<tr>...</tr><tr>...</tr>'); 
     $("tbody#order_details").append('<tr>...</tr><tr>...</tr>'); 

然而,当它执行它放置<tr>...</tr><tr>...</tr>在页面的顶部,而不是下面在当前<tbody id="order_details">开始。

表的代码是这样的:

 <table border="1" cellspacing="0" cellpadding="0" id="OrdersTable" 
      style="border: 1px solid black; margin-top: 0px;"> 
     <tbody> 
     <tr> 
      <th>Account Number</th> 
      <td colspan="3">99996</td> 
      <th>Email</th> 
      <td colspan="5"><asp:Label ID="billing_email" runat="server" Text="Label"></asp:Label></td> 
      </tr> 
     <tr> 
     etc etc.... 
     </tbody> 
      <tbody id="order_details"> 
       <!-- Start looping the orders here --> 

      </tbody> 
     </table> 

什么我忘了整理为它那两行添加<tbody id="order_details">后?

+0

怎么样TD? – mplungjan 2012-08-14 14:48:27

+3

您的标记无效。 – undefined 2012-08-14 14:49:16

+2

为什么你有一个关闭'thead'标签的开放'tbody'标签 – 2012-08-14 14:49:26

回答

1

只是改变这个网站这样:

 <table border="1" cellspacing="0" cellpadding="0" id="OrdersTable" style="border: 1px solid black; margin-top: 0px;"> 
     <thead> 
     <tr> 
      <th>Account Number</th> 
      <th colspan="3">99996</th> 
      <th>Email</th> 
      <th colspan="5"><asp:Label ID="billing_email" runat="server" Text="Label"></asp:Label></th> 
     </tr> 
     etc etc.... 
     </thead> 
     <tbody id="order_details"> 
      <!-- Start looping the orders here --> 

     </tbody> 
     </table> 

我想这是因为HTML标记的, 我希望这会有所帮助。

+0

'​​'仍在''内。他也不能在他的“”上追加一个“”而没有“​​”。 – Ohgodwhy 2012-08-14 14:53:49

+0

ohh狗屎对不起,让我更新,谢谢你 – 2012-08-14 14:54:36

+0

还有一个未封闭的标签在头上,colspan属性的th元素和看起来像头部的数据。我认为存在更大的问题,而不仅仅是一个小标记错误。 – jasonlfunk 2012-08-14 14:56:29

1

你必须在TD中写下“...”。应该 ... 。

为了获得更好的性能,请使用#order_details而不是tbody#order_details。由于ID是唯一的,jQuery将始终找到正确的元素,而无需指定标记名称

1

试试这个::

$("tbody#order_details").append('<tr><td>...</td></tr><tr><td>...</td></tr>'); 
+0

这导致它在表格的底部。 – StealthRT 2012-08-14 15:00:05