2016-07-27 100 views
-2

我有這個JS代碼來添加和刪除表格行時,用戶單擊按鈕。添加行就像做夢一樣。我的問題是用戶單擊刪除按鈕,除第一行以外的所有內容都將被刪除。我只希望刪除最後一行,如果它們添加到很多行。如何只刪除表格的最後一行?

編輯 我已經tryed這

function deleteRow(tableID) { 
var table = document.getElementById(tableID); 
if(table.rows.length <= 1) {    // limit the user from removing all the fields 
    alert("Cannot Remove all the fields."); 
    break; 
} 
table.deleteRow(table.rows.length -1); 
} 

但是,當我把環出添加按鈕不再工作...

<script> 

function addRow(tableID) { 
var table = document.getElementById(tableID); 
var rowCount = table.rows.length; 
if(rowCount < 50){       // limit the user from creating fields more than your limits 
    var row = table.insertRow(rowCount); 
    var colCount = table.rows[0].cells.length; 
    for(var i=0; i <colCount; i++) { 
     var newcell = row.insertCell(i); 
     newcell.innerHTML = table.rows[0].cells[i].innerHTML; 
    } 
}else{ 
    alert("Maximum Unit limit is 5"); 

} 
} 


function deleteRow(tableID) { 
var table = document.getElementById(tableID); 
var rowCount = table.rows.length; 
for(var i=0; i<rowCount; i++) { 
    var row = table.rows[i]; 
     if(rowCount <= 1) {    // limit the user from removing all the fields 
      alert("Cannot Remove all the fields."); 
      break; 
     } 
     table.deleteRow(i); 
     rowCount--; 
     i--; 
    } 
} 

</script> 
+1

http://stackoverflow.com/questions/10686888/delete-last-row-in-table –

+1

那你爲什麼運行一個循環來刪除最後一行。 –

+0

因爲什麼原因,如果我不運行循環刪除最後一行。我不再能夠添加一行。 – elliottdan

回答

-1

你不需要一個循環,這代碼將起作用:

function deleteRow(tableID) { 
    var table = document.getElementById(tableID); 
    if(table.rows.length <= 1) {    // limit the user from removing all the fields 
     alert("Cannot Remove all the fields."); 
     break; 
    } 
    table.deleteRow(table.rows.length -1); 
} 
+1

我不太明白這個代碼有什麼問題... – KerDam

+0

我試過這一切準備就緒。與此問題是。出於某種原因,添加新行按鈕不再起作用 – elliottdan

0

要刪除你可以使用這個表格的最後一行。

function deleteRow(tableID) { 
    var table = document.getElementById(tableID); 
    var rowCount = table.rows.length; 
    table.deleteRow(rowCount -1); 
} 
+0

問題在於用戶可以刪除所有行。我想確定這是不可能的。 – elliottdan