-2

我处于需要你帮助的情况。

我在javascript中编写了下面的代码,它检查在gridview中检查了多少个复选框并显示消息但是它仅限于我的gridview的一个页面并且当我移动到下一页时不起作用,有什么方法可以让javascript代码检查多少个复选框已经检查了gridview的所有页面?

function CheckBoxCount()
    {
     var gv = document.getElementById("<%= Gridview1.ClientID %>");
     var inputList = gv.getElementsByTagName("input");
     var numChecked = 0;

     for (var i = 0; i < inputList.length; i++)
      {
        if (inputList[i].type == "checkbox" && inputList[i].checked)
         {
          numChecked = numChecked + 1;
          if( numChecked > 8)
          {
           alert('Only Eight items could be added in final grid');
           break;
          }
         }
      }

    }
4

2 回答 2

0

试试下面的代码:

Javascript:

function gvCheckBoxClick(currentCheck) {

            var input = document.getElementById("<%=gvRuleList.ClientID %>");
            var chekRowCount = document.getElementById("<%=chkRowCount.ClientID %>").value;

            if (currentCheck.type == "checkbox") {
                if (currentCheck.checked == true) {
                    chekRowCount++;
                }
                else {
                    chekRowCount--;
                }
            }

}

网格视图:

<Columns>
    <asp:TemplateField HeaderText="<%$ Resources:Opm_RuleList_ListHeader_Select %>">
        <ItemTemplate>
            <asp:CheckBox ID="chkSelect" runat="server" onclick="javascript:gvCheckBoxClick(this);"/>
        </ItemTemplate>
    </asp:TemplateField>
</Columns>

使用隐藏变量

<input type="hidden" id="chkRowCount" name="chkRowCount" runat ="server" value="0" />
于 2013-02-14T10:26:00.613 回答
0
alert($('input[name=checkbox_name]').attr('checked'));
             or
alert($("input:checkbox:checked").length);

如果他们没有工作,请检查:计算使用 jquery 检查的 html 复选框的数量

*** 不要忘记在你的标记中添加 Jquery.min.js

于 2013-01-23T06:28:07.857 回答