复选框全选(二) 使用ID实现全选

function selectAll(bool)
        {
            for(var i = 0;i < document.all.tags("INPUT").length;i++)
            {
                if(document.all.tags("INPUT")[i].type == "checkbox" 
                    && document.all.tags("INPUT")[i].id != "")
                {
                    var strobj = document.all.tags("INPUT")[i].name;
                    
                    if(strobj.substring(strobj.length - ('$cbk').length) =='$cbk' )
                        document.all.tags("INPUT")[i].checked = bool;
                }
            }
        }

调用一:

TemplateColumn col0 = new TemplateColumn();
        col0.HeaderText = "<input type='checkbox' οnmοuseup='selectlist(!this.checked)' />全选";
        col0.ItemTemplate = new UpDateEmpSalaryCBKTemplate();
        col0.ItemStyle.CssClass = "underline";
        dgList.Columns.Add(col0);

调用二:
<asp:GridView id="GridView1" runat="server" AutoGenerateColumns="False" 
                EnableModelValidation="True" onrowdatabound="GridView1_RowDataBound">
                <Columns>
                     <asp:TemplateField HeaderStyle-HorizontalAlign="Center" ItemStyle-Width="30" HeaderStyle-Width="30">
                       <ItemTemplate>
                           <asp:CheckBox ID="chkContractID" runat="server" CssClass='ID$<%# DataBinder.Eval(Container.DataItem,"ContractID") %>' />
                       </ItemTemplate>
                       <HeaderTemplate>
                           <asp:CheckBox runat="server" οnclick="selectAll(this.checked)" /> //这里用服务器控件,全选的控件 选中的状态不会丢失
                       </HeaderTemplate>
                   </asp:TemplateField>
                    <asp:HyperLinkField HeaderText="合同编号" DataTextField="ContractCode" DataNavigateUrlFields="ContractID" DataNavigateUrlFormatString="FrmEdit.aspx?S_ID={0}&CMD=Look" /> 
                    <asp:BoundField HeaderText="合同金额" DataField="ServiceAmount" 
                        DataFormatString="¥{0}"/>
                    <asp:BoundField HeaderText="签订日期" DataField="ContractDatetime" DataFormatString="{0:yyyy/MM/dd}"/>
                    <asp:BoundField HeaderText="业务员" DataField="CreateByName"/>
                    <asp:BoundField HeaderText="合同开始时间" DataField="ContractStartTime" DataFormatString="{0:yyyy/MM/dd}"/>
                    <asp:BoundField HeaderText="合同结束时间" DataField="ContractEndTime" DataFormatString="{0:yyyy/MM/dd}"/>
                    <asp:BoundField HeaderText="合同状态" DataField="ContractStatusID"/>
                    <asp:BoundField HeaderText="是否审核" DataField="IsValid"/>
                </Columns>
            </asp:GridView>

<script type="text/javascript" language="javascript">
            function selectAll(bool) {
                for (var i = 0; i < document.all.tags("INPUT").length; i++) {
                    if (document.all.tags("INPUT")[i].type == "checkbox"
                    && document.all.tags("INPUT")[i].id != "") {
                        var strobj = document.all.tags("INPUT")[i].name;

                        if (strobj.substring(strobj.length - ('$chkContractID').length) == '$chkContractID')
                            document.all.tags("INPUT")[i].checked = bool;
                    }
                }
            }
        </script>

 

转载于:https://www.cnblogs.com/xust/articles/2661003.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值