Свойство, отмеченное флажком, не определено

#javascript #html

#javascript #HTML

Вопрос:

Я добавляю строки и столбцы в html-таблицу программно, используя Javascript:

 for (var i = 0; i < results.length; i  ) {
                    table = document.getElementById("EntityRecords");
                    rowCount = table.rows.length;
                    row = table.insertRow(rowCount);
                    row.id = results[i].LeadId;
                    row.className = "EntityRecordsRow";

                    cell1 = row.insertCell(0);
                    element = document.createElement("input");
                    element.type = "checkbox";
                    element.name = "chkbox[]";
                    cell1.appendChild(element);
                    cell1.className = "EntityRecordsCol";

                    cell2 = row.insertCell(1);
                    cell2.innerHTML = results[i].FirstName   " "   results[i].LastName;
                }
  

При событии нажатия кнопки мне нужно найти установленный флажок. Я читаю ячейки таблицы, используя приведенный ниже код, но свойство checkbox cell checked не определено:

 function OnRecordSelectionBtnClick() {
var table = document.getElementById("EntityRecords");
for (var i = 0, row; row = table.rows[i]; i  ) {
    var col = row.cells[0];
    if (col.checked) {
        var selectedText = row.cells[1].innerHTML;
        alert(selectedText);
    }
}
}
  

Есть предложения?

Комментарии:

1. Вы не проверяете ячейку в этом примере?

Ответ №1:

if ( col.firstElementChild.checked ) , не if ( col.checked ) . col является элементом td, а его первым дочерним элементом является input, который имеет checked свойство.