【问题标题】:Check all checkboxes in first column of gridview?检查gridview第一列中的所有复选框?
【发布时间】:2016-11-30 06:59:57
【问题描述】:

我已完成以下代码来检查 gridview 第一列中的所有复选框,但它仅适用于 IE 5.0 到 8.0,并且当我在 IE 9 及更高版本中以“预期功能”运行它时会出现 Javascript 错误。谁能指导我完成这个?

function selectAllItems(gridID, hdnSelectedValuesID, pagedGrid, chkSelectAllCtrl) {

var hdnSelectedValuesID = document.getElementById(hdnSelectedValuesID);
if (chkSelectAllCtrl != null) {
    hdnSelectedValuesID.value = '';
    var rowLength = document.getElementById(gridID).rows.length;
    var upperLimitOnRows = 0;
    var elementA = '';

    if (pagedGrid)
        upperLimitOnRows = rowLength - 1;
    else
        upperLimitOnRows = rowLength;

    //Set the other checkboxes in the item section to selected    
    for (var Count = 1; Count < upperLimitOnRows; Count++) {
        //Check all checkboxes in the first column of grid
        document.getElementById(gridID).rows(Count).cells(0).childNodes(0).checked = chkSelectAllCtrl.checked; // Error In this Line
    }
}
}

【问题讨论】:

  • 你是如何调用你的函数的,你的 html 是什么?
  • @JDE 我正在调用 CheckBox 的 onClick 函数。像这样 "return selectAllItems('" + gvFilterRecords.ClientID + "','" + hdnTransactions.ClientID + "', " + gvFilterRecords.AllowPaging.ToString().ToLower() + ", this);"
  • 我认为你这是错误的。给我一秒钟。您可以添加您的 html 或将其复制到 codepen 中吗?
  • @JDE 在 IE 7 和 8 上运行良好,但在 IE 9 及更高版本中运行时无法正常工作。我正在为 Checkbox
    chkSelectAll.Attributes.Add("onclick", "return selectAllItems('" + gvFilterRecords.ClientID + "','" + hdnTransactions.ClientID + "', " + gvFilterRecords .AllowPaging.ToString().ToLower() + ", this);");

标签: javascript jquery html asp.net gridview


【解决方案1】:

你应该使用方括号而不是括号:

var grid = document.getElementById(gridID);
for (var count = 1; count < upperLimitOnRows; count++) {
   grid.rows[count].cells[0].childNodes[0].checked = chkSelectAllCtrl.checked;
}

注意复选框也可能是子节点 1 而不是 0。这是我在 TemplateField 中看到的,但对于 CheckBoxField 或自动生成的列可能会有所不同。

【讨论】:

    猜你喜欢
    • 2012-04-10
    • 1970-01-01
    • 2011-11-03
    • 2017-03-31
    • 1970-01-01
    • 1970-01-01
    • 2012-12-12
    • 2017-03-18
    • 1970-01-01
    相关资源
    最近更新 更多