【发布时间】:2013-02-27 11:50:15
【问题描述】:
我已阅读this question from SO,但未能满足我的需求。你能帮帮我吗?
我有这个插件生成的 html:
<table cellspacing="0" class="grid" style="width: 30%">
<tr>
<th colspan="13" style="text-align: left; ">
<a rel="nofollow" href="http://...">Unique</a> (1 issues) </th>
</tr>
<tr>
<th style="text-align: left; text-transform: capitalize;">Head1</th>
<th style="text-align: left; text-transform: capitalize;">Head2</th>
<th style="text-align: left; text-transform: capitalize;">Head3</th>
<th style="text-align: left; text-transform: capitalize;">Head4</th>
<th style="text-align: left; text-transform: capitalize;">Head5</th>
<th style="text-align: left; text-transform: capitalize;">Head6</th>
<th style="text-align: left; text-transform: capitalize;">Head7</th>
<th style="text-align: left; text-transform: capitalize;">Head8</th>
<th style="text-align: left; text-transform: capitalize;">Head9</th>
<th style="text-align: left; text-transform: capitalize;">Head10</th>
<th style="text-align: left; text-transform: capitalize;">Head11</th>
<th style="text-align: left; text-transform: capitalize;">Head12</th>
<th style="text-align: left; text-transform: capitalize;">Head13</th>
</tr>
<tr class="rowNormal">
<td nowrap="true">
<p><a href="http:...">Data1</a></p>
</td>
<td nowrap="true">
Data 2, 2 ,2
</td>
<td nowrap="true">
Data 3, 3, 3
</td>
<td nowrap="true">
<img src="http://..." alt="" border="0" /> Data4
</td>
<td nowrap="true">
Green
</td>
<td nowrap="true">
Smith, John
</td>
<td nowrap="true">
Fritz, Scott
</td>
<td nowrap="true">
Data6
</td>
<td nowrap="true">
Data7
</td>
<td nowrap="true">
Data 8
</td>
<td nowrap="true">
Data9
</td>
<td nowrap="true">
345
</td>
<td nowrap="true">
764
</td>
</tr>
</table>
经过几次传递后我进行了转换:
$("table:contains('Unique')").removeClass("grid");
$("table:contains('Unique')").find("th").parent("tr").addClass("hidden");
$("table:contains('Unique')").find("img").addClass("hidden");
$("table:contains('Unique') td[nowrap='true']").wrap("tr");
进入DataX的一列
现在我想将这些数据中的每一个作为一行附加到这个现有的表中:
<div class="table-wrap"><table class="mytable"><tbody><tr><td colspan="1" class="tabletd"><strong>name1</strong></td></tr><tr><td colspan="1" class="tabletd"><strong>name 2</strong></td></tr><tr><td class="tabletd"><strong>name 3</strong></td></tr><tr><td colspan="1" class="tabletd"><strong>name4</strong></td></tr><tr><td class="tabletd"><strong>name2</strong></td></tr><tr><td colspan="1" class="tabletd"><strong>name5</strong></td></tr><tr><td colspan="1" class="tabletd"><strong>name 6</strong></td></tr><tr><td colspan="1" class="tabletd"><strong>name 7</strong></td></tr><tr><td colspan="1" class="tabletd"><strong>name 8 </strong></td></tr><tr><td colspan="1" class="tabletd"><strong>name 9<br /> </strong></td></tr><tr><td colspan="1" class="tabletd"><strong>name 10</strong></td></tr><tr><td colspan="1" class="tabletd"><strong>digit 1<br /> </strong></td></tr><tr><td colspan="1" class="tabletd"><strong>digit 2<br /> </strong></td></tr></tbody></table></div>
所以在结果中我有第二个表中的一个单元格的行,一个来自第一个表。即:
Name 1 Data1
Name 2 Data2
Name 3 Data2
等
非常感谢任何帮助。
【问题讨论】:
-
我会缓存你的表对象: var table = $("table:contains('Unique')") 然后使用 .append() 将你的代码添加到它(但不要忘记你将需要使用正确的 colspan 创建行和列)
-
下面不追加添加行,而不是右边的列?正如链接的问题所暗示的那样,我将不得不以某种方式遍历每个 tr。
标签: jquery html-table