//这种方法插入表格行时,
var msg="";
msg="<tr><td colspan='8'><table><tr><td>1</td><td>3</td><td>2</td><tr></table></td></tr>"
$("#datatable-details tr:eq("+tr.rowIndex+")").after(msg);
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(function(){
$("#datatable-details").on('click', 'i[data-toggle]', function() {
var $this = $(this),
tr = $(this).closest( 'tr' ).get(0);
if($this.hasClass('fa-plus-square-o')){
//先对js表格中的元素有没有展开的。
var tb = document.getElementById("datatable-details");
var r = tb.insertRow(tr.rowIndex+1);
var c1 = r.insertCell(0);
c1.colSpan = 8;
c1.innerHTML ="<td colspan='8'><table><tr><td>1</td><td>3</td><td>2</td><tr></table></td>";
$this.removeClass( 'fa-plus-square-o' ).addClass( 'fa-minus-square-o' );
}else {
$this.removeClass( 'fa-minus-square-o' ).addClass( 'fa-plus-square-o' );
}
});
});
</script>
</head>
<body>
<table id="datatable-details">
<tr>
<td><i data-toggle class="fa fa-plus-square-o text-primary h5 m-none" style="cursor: pointer;"></i></td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>1</td>
</tr>
<tr>
<td><i data-toggle class="fa fa-plus-square-o text-primary h5 m-none" style="cursor: pointer;"></i></td>
<td>2</td>
<td>2</td>
<td>2</td>
<td>2</td>
<td>2</td>
<td>2</td>
</tr>
</table>
</body>
</html>
出现如上图所示
控制台输出如下