zoukankan      html  css  js  c++  java
  • 解决GridView中嵌入CheckBox,事件无法响应的问题

    今天在一个项目中的某个页面内添加了一个GRIDVIEW表控件,其中一个字段为模板列,放入了一个CHECKBOX复选框控件,我希望用户在选择复选框时能激发它的CheckedChanged事件,从而进行数据库的操作,代码如下:

    ASPX页面代码:

    代码
    <asp:GridView ID="gridCursor" runat="server" CssClass="Grid" Width="90%" 
                    AutoGenerateColumns
    ="False" onrowdatabound="gridCursor_RowDataBound" 
                    DataKeyNames
    ="学科代码,状态">
                    
    <Columns>
                        
    <asp:BoundField DataField="学科代码" HeaderText="学科代码" />
                        
    <asp:BoundField DataField="学科名称" HeaderText="学科名称" />
                        
    <asp:TemplateField HeaderText="状态">
                            
    <ItemTemplate>
                                
    <asp:CheckBox ID="chkValid" runat="server" AutoPostBack="True" 
                                    oncheckedchanged
    ="chkValid_CheckedChanged" />
                            
    </ItemTemplate>
                        
    </asp:TemplateField>
                    
    </Columns>
                
    </asp:GridView>

    后台CheckedChanged事件的代码:

    代码
    protected void chkValid_CheckedChanged(object sender, EventArgs e)
        {
            CheckBox checkbox 
    = (CheckBox)sender;
            GridViewRow row 
    = (GridViewRow)checkbox.NamingContainer;
            
    string codeCursor = gridCursor.DataKeys[row.RowIndex]["学科代码"].ToString();
            
    if (checkbox.Checked)
                sysSqlRunner.isDone(
    "update educa_bas_course set status=1 where code='" + codeCursor + "'");
            
    else
                sysSqlRunner.isDone(
    "update educa_bas_course set status=0 where code='" + codeCursor + "'");
        }

    程序虽然写好了,可以正确编译运行,但奇怪的是CHECKBOX的CheckedChanged事件确怎么也触发不了,在网上找了很多类似问题的解答都无效,最后找到一篇文章说需要把GRIDVIEW的EnableViewState设为false才行,结果一试,果然可以触发CheckedChanged事件了。

  • 相关阅读:
    [转]SDRAM中的一些疑惑点
    [转]如何学习小波分析?
    [转]功率谱和频谱的区别、联系
    使用Vim为每一行自动编号
    [转]阿英 Matlab fftshift 详解
    [转]性噪比和相位失真
    神舟笔记本精盾K480N高频噪声消除方法
    Tips:verilog计数分频计算
    vim的列编辑操作
    【题解】 「CTSC2018」暴力写挂 点分治+虚树+树形dp LOJ2553
  • 原文地址:https://www.cnblogs.com/jinqi79731/p/1727862.html
Copyright © 2011-2022 走看看