6

我正在尝试使用 jquery 在 HTML 表的单元格中插入行,我想要这样的东西:

--------------
ID | Sec | Div
--------------
1  | S1  | D1
   | S2  | D2
   | S3  | D3
--------------
2  | S3  | D3
   | S4  | D4
   | S5  | D5
--------------

这是我到目前为止所拥有的:

function insertRows(this){


var Rows1 = '<tr><td> S1 </td></tr><tr><td> S2 </td></tr><tr><td> S3 </td></tr>'
var Rows2 = '<tr><td> S3 </td></tr><tr><td> S4 </td></tr><tr><td> S5 </td></tr>'

this.srcElement.parentElement.nextSibling.outerHTML = Rows1
this.srcElement.parentElement.nextSibling.nextSibling.outerHTML = Rows2

}

所做的是,它将所有内容插入同一行,如下所示:

---------------------
ID | Sec     | Div
---------------------
1  | S1S2S3  | D1D2D3
---------------------
2  | S3S4S5  | D3D4D5
---------------------

我怎样才能使它工作?

4

3 回答 3

10

您可以在不使用 jquery 的情况下满足您的要求,只需将此代码粘贴到 body 标记中

 <table>
 <tr>
 <td >ID</td>
 <td>SEC</td>
 <td>DIV</td>

 </tr>
 <tr>
 <td rowspan="3">1</td>
 <td>S1</td>
 <td>D1</td>

 </tr>
 <tr>

 <td>S2</td>
<td>D2</td>

</tr>
<tr>

<td>S3</td>
<td>D3</td>

</tr>
<tr><td colspan="3">---------------------</td></tr>
<tr>
<td>ID</td>
<td>SEC</td>
<td>DIV</td>

</tr>
<tr>
<td rowspan="3">2</td>
<td>S1</td>
<td>D1</td>

</tr>
<tr>

<td>S2</td>
<td>D2</td>

</tr>
<tr>

<td>S3</td>
<td>D3</td>

</tr>
</table>

在这里您可以找到实时示例http://jsfiddle.net/Anujyadav123/AdQy3/

于 2012-10-05T10:41:03.470 回答
0

看看这里在表上动态添加 colspan 和 rowspan

或者

添加行是否重要,如果不是,您可以将值添加到单元格中

例子:

function showP(){
     txt1 = $($('#myTable').find('TR').find('TD')[1]).html()+'</br>S1'
     txt3 = $($('#myTable').find('TR').find('TD')[3]).html()+'</br>D1'

     $($('#myTable').find('TR').find('TD')[1]).html(txt1 )
     $($('#myTable').find('TR').find('TD')[3]).html(txt3 )
}
于 2012-09-24T16:22:25.760 回答
0

.innerHTML在处理表格时相当破碎,至少在 IE 下是这样。

您的选择是:

  1. 限制使用.innerHTML仅更改元素的内容td
  2. 用于.innerHTML替换整个表结构
  3. 使用DOM方法来操作表格行和表格单元格。
    https://developer.mozilla.org/en-US/docs/Traversing_an_HTML_table_with_JavaScript_and_DOM_Interfaces
于 2012-09-24T16:38:34.117 回答