在HTML表格的单元格中插入多行

时间:2012-09-24 16:20:59

标签: javascript jquery html-table

我正在尝试使用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
---------------------

我该如何使其发挥作用?

3 个答案:

答案 0 :(得分:9)

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

 <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/

答案 1 :(得分:0)

看看Add colspan and rowspan on table on the fly

<强> OR

添加行很重要,否则就可以将值添加到单元格

<强> 实施例

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 )
}

答案 2 :(得分: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