如果删除所有内容,如何取消选中复选框?

时间:2016-10-12 13:47:46

标签: javascript checkbox

我尝试在删除所有行时取消选中该复选框。这是我目前的代码:

function removeElements() 
{
    var chxbox= this.form.getElementsByTagName('input');
    for (var i = chxbox.length; i--; ) {
        if (chxbox[i].name === 'delrow[]') {
            chxbox[i].checked = this.checked;
        }else (chxbox[i].name === 'delrow[]') {
            chxbox[i].checked = this.checked = false;
    }
}

这是我的复选框:

  <input type="checkbox"  onclick="removeElements.call(this);" />

检查结果没问题,但未检查的doens似乎无法正常工作。

1 个答案:

答案 0 :(得分:0)

我在你的小提琴里工作过。删除所有行后,应取消选中“chk []”复选框。

function deleteRow(tableID) {
    try {
        var table = document.getElementById(tableID);
        var rowCount = table.rows.length;

        for (var i = 1; i < rowCount; i++) {
            var row = table.rows[i];
            var chkbox = row.cells[0].childNodes[0];
            if (null != chkbox && true == chkbox.checked) {
                table.deleteRow(i);
                rowCount--;
                i--;
            }
        }

        //Here..
        if (table.rows.length == 1) {
             var elem = document.getElementsByName("chk[]")[0];
             console.log( elem );
             elem.checked = false;
        }
    } catch (e) {
        alert(e);
    }
}

小提琴:http://jsfiddle.net/7Dqqf/321/