我正在尝试使用JavaScript将onclick事件添加到表列中。例如,在第一列或第二列上启用了onclick事件!以下函数适用于行,但是我需要针对特定​​列编辑此函数。

function addRowHandlers() {
    var table = document.getElementById("tableId");
    var rows = table.getElementsByTagName("tr");
    for(i = 0; i < rows.length; i++) {
        var currentRow = table.rows[i];
        var createClickHandler = function (row) {
            return function () {
                var cell = row.getElementsByTagName("td")[0];
                var id = cell.innerHTML;
                alert("id:" + id);
            };
        };

        currentRow.onclick = createClickHandler(currentRow);
    }
}

最佳答案

试试这个工作解决方案。

function addRowHandlers() {
 var table = document.getElementById("tableId");
 var rows = table.getElementsByTagName("tr");

 for (i = 0; i < rows.length; i++) {
    var currentRow = table.rows[i];
    currentRow.onclick = createClickHandler(currentRow);
 }
}

function createClickHandler(row){

            return function() {
                   var cell = row.getElementsByTagName("td")[0];// if you put 0 here then it will return first column of this row
                       var id = cell.innerHTML;
                        alert("id:" + id);
              };

}

addRowHandlers();


Working Demo

关于javascript - 如何将onclick事件添加到表列?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19252233/

10-13 05:36