2010-06-21 69 views
2

我正在使用下面的代碼來刪除HTML表格行使用javascript,但它給了我錯誤。使用Javascript刪除HTML表格行

使用下面的代碼我正在使用包含刪除錨標記的JavaScript在運行時創建一個列。

  var tbody = document.getElementById("<%= tblcriteria.ClientID %>").getElementsByTagName("TBODY")[0]; 

var row = document.createElement("TR") 
var td4 = document.createElement("TD"); 
var code = "<a href=\"javascript:deleteCriteria(this.parentNode.parentNode.rowIndex);\">delete</a>"; 
    td4.setAttribute("align", "center"); 
    td4.innerHTML = code; 
    row.appendChild(td4); 
    tbody.appendChild(row); 

下面的功能,我使用刪除HTML表格的當前行:

function deleteCriteria(i) { 
     if (window.confirm('Are you sure you want to delete this record?') == true) { 
      document.getElementById("<%= tblcriteria.ClientID %>").deleteRow(i); 

     } 
    } 

它給我下面的錯誤:

'this.parentNode.parentNode.rowIndex' is null or not an object 

請告訴我,我在哪裏犯錯..

+2

你可能要考慮的jQuery - http://jquery.com/ - 爲更容易DOM操作和跨瀏覽器支持。 – 2010-06-21 06:58:56

回答

2

由於@Sjoerd提到你應該使用onClick來代替。

此行

var code = "<a href=\"javascript:deleteCriteria(this.parentNode.parentNode.rowIndex);\">delete</a>";

應該讀

var code = "<a href=\'#\' onclick=\'javascript:deleteCriteria(this.parentNode.parentNode.rowIndex);\'>delete</a>";

+0

如果您使用'onclick','javascript:'標籤中沒有任何一點。 – James 2010-06-21 07:31:36