2017-05-23 70 views
0

我在該表格中有一個表格我有一個用於添加新行的按鈕。在該表格中,我想在用戶點擊添加行按鈕時動態添加新行。我但它不工作。 JSFiddle中有HTML和JQuery代碼。請建議。新表格行不是使用JQuery克隆方法創建的

<table id="myTable" border="1"> 
    <tr> 
     @*<td>SR</td>*@ 
     <td>Name</td> 
     <td>Age</td> 
     <td>Delete?</td> 
     <td>Add</td> 
    </tr> 
    <tr> 
     @*<td>1</td>*@ 
     <td><input size=25 type="text" id="nmbox" /></td> 
     <td><input size=25 type="text" id="agbox" /></td> 
     <td><input type="button" id="delRow" value="Delete" onclick="deleteRow(this)" /></td> 
     <td><input type="button" id="addRow" value="Add " onclick="insRow()" /></td> 
    </tr> 
</table> 
var new_row1 = $('#mytable tr:last').clone(); 
$('#mytable').append(new_row1); 
+0

你試過:最後一個孩子,而不是:持續多久? –

+0

你能給出你的代碼的完整樣本嗎?我恢復你在'insRow()'函數中顯示的小JS代碼?如果是這樣,該函數是在'window'範圍內聲明的,還是在jquery'document.ready'事件處理程序中? –

+0

什麼jsfiddle?如果沒有完整的代碼上下文,沒有任何顯示會顯示問題提供一個[mcve] – charlietfl

回答

1

1)id選擇不匹配$('#myTable tr:last').帽Ť

2)ID應爲每個元素是唯一的。

function insRow(){ 
 
var new_row1 = $('#myTable tr:last').clone(); 
 
$('#myTable').append(new_row1); 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table id="myTable" border="1"> 
 
    <tr> 
 
     @*<td>SR</td>*@ 
 
     <td>Name</td> 
 
     <td>Age</td> 
 
     <td>Delete?</td> 
 
     <td>Add</td> 
 
    </tr> 
 
    <tr> 
 
     @*<td>1</td>*@ 
 
     <td><input size=25 type="text" /></td> 
 
     <td><input size=25 type="text" /></td> 
 
     <td><input type="button" value="Delete" onclick="deleteRow(this)" /></td> 
 
     <td><input type="button" value="Add " onclick="insRow()" /></td> 
 
    </tr> 
 
</table>

+0

thanxxx .removed that @ freedomn-m – JYoThI

0

添加子元素融入克隆一個沒有jQuery的:

clone = ElementTo.cloneNode(); 

while (ElementToBeCloned.firstChild){ 
    clone.appendChild(ElementToBeCloned.lastChild); 
}