0

js ファイルを使用せずにすべてのチェックボックスを選択する方法はありますか。jquery 1.8.3またはjquery 1.7.2を使用するたびに。私の他のjsファイルは実行されないか、実行されない問題が原因である可能性があります。そのため、グリッドビューにチェックボックスがあり、すべてのオプションをチェックしたいと考えています。

 <asp:GridView Width="96%" HeaderStyle-HorizontalAlign="left" ID="gridimages" Font-Size="13px" HeaderStyle-Font-Size="15px" runat="server"  OnSorting="gridimages_Sorting" AutoGenerateColumns="false" AllowSorting="true" CssClass="grid gridimages" HeaderStyle-BorderColor="#D0D0D0" AlternatingRowStyle-BorderColor="#D0D0D0" RowStyle-BorderColor="#D0D0D0" OnRowDataBound="gridimages_RowDataBound" AllowPaging="true" PageSize="50" PagerSettings-Mode="NumericFirstLast" OnPageIndexChanging="gridimages_PageIndexChanging" CellPadding="3" BorderColor="#D0D0D0" BorderStyle="Groove" BorderWidth="1px" OnSelectedIndexChanged="gridimages_SelectedIndexChanged" GridLines="both">
        <AlternatingRowStyle BackColor="White" ForeColor="#284775"/>
     <%--   <RowStyle HorizontalAlign="Center" />--%>
        <Columns>

            <asp:TemplateField HeaderStyle-Width="20px" HeaderStyle-Font-Size="14px" HeaderStyle-ForeColor="Black">
          <HeaderTemplate>
            <asp:CheckBox ID="chkSelectAll" class="checkAll" runat="server" Text="" onclick="SelectAllCheckboxes(this);"  />
        </HeaderTemplate>
                <ItemTemplate>      <div style="text-align: left;">
                   <asp:HiddenField ID="hdn_id" runat="server" Value='<%#Eval("Id") %>' />

                    <asp:CheckBox ID="CheckBoxImage" CssClass="CheckBoxImage1"  onClick="CheckBoxImage();" runat="server" /></div>
                </ItemTemplate>
            </asp:TemplateField>

JavaScript コード:

           function SelectAllCheckboxes(chk) {
        var gvcheck = document.getElementById('<%= gridimages.ClientID %>');
        var i;
        //Condition to check header checkbox selected or not if that is true checked all checkboxes
        if (chk.checked) {
            for (i = 0; i < gvcheck.rows.length; i++) {
                var inputs = gvcheck.rows[i].getElementsByTagName('input');
                inputs[0].checked = true;
            }
        }
            //if condition fails uncheck all checkboxes in gridview
        else {
            for (i = 0; i < gvcheck.rows.length; i++) {
                var inputs = gvcheck.rows[i].getElementsByTagName('input');
                inputs[0].checked = false;
            }
        }
    }

JavaScriptコードを見てください。var 入力に問題があります。var 入力の CheckBoxImage の ID が必要ですが、実行できません。チェックボックスの ID を取得するには、var 入力行で何を変更する必要がありますか。助けてください。

4

2 に答える 2

0

純粋な JavaScript を使用します。

HTML

<input type="checkbox" id="checkall" /><br />
<input type="checkbox" class="check" />
<input type="checkbox" class="check" />
<input type="checkbox" class="check" />
<input type="checkbox" class="check" />

Javascript

var chkAll = document.getElementById("checkall");
chkAll.addEventListener('click', function(e) {
    setCheck(this.checked);
});

function setCheck(value) {
    var items = document.getElementsByTagName("input");
    var itemLen = items.length;
    for (i = 0; i < itemLen; i++) {
        if (items[i].getAttribute("class") == "check") {
            items[i].checked = value;
        }
    }
}

デモコード: jsfiddle

于 2013-10-15T09:46:40.843 に答える