zoukankan      html  css  js  c++  java
  • 关于asp.net中绑定的模版列CheckBox无法触发OnCheckedChanged事件的问题

    以下是代码:

    1 <ISWebGrid:WebGridColumn Caption="首页显示" InputRequired="true" Name="Title" Width="70px"
    2 ColumnType="Template" DataMember="IsShow" EditType="NoEdit">
    3 <CellTemplate>
    4 <asp:CheckBox runat="server" ID="cbIsShow" Checked='<%# Bind("IsShow") %>' EnableViewState="true"
    5 OnCheckedChanged="cbIsShow_CheckedChanged" Enabled="false" />
    6 </CellTemplate>
    7 </ISWebGrid:WebGridColumn>
    1 protected void cbIsShow_CheckedChanged(object sender,EventArgs e)
    2 {
    3 Response.Write("<script>alert(\"cbIsShow_CheckedChanged\");</script>");
    4 }

    当点击模版列的CheckBox时,后台的cbIsShow_CheckedChanged方法总是不执行。

    google中有许多种答案如:

    1.AutoPostBack="True"没写;

    2.EnableViewState要设为false;

    试过后都不行。

    当我把绑定去掉以后,cbIsShow_CheckedChanged方法正常运行。

    我给的解释是:

    OnCheckedChanged是在CheckBox的Checked属性变化之后才会满足事件触发条件的,模版列中的CheckBox的Checked属性绑定了IsShow字段,在没有改变数据源的情况下,CheckBox的Checked属性值是不会改变的,不满足事件触发条件,所以不运行事件处理函数也是正常的。

    也许可行的方法为:

    1.为CheckBox添加客户端事件onClicked,在js中调用后台的方法。

  • 相关阅读:
    loadrunner上传文件到网盘
    robotframework + appium 获取android toast
    jmeter 签名MD5生成
    python appium 封装获取toast方法
    java appium客户端 6.1.0android长按及滑动变更
    父类与子类 构造函数 变量 加载顺序
    检测安卓手机联网方式
    context menu与submenu区别
    div 居中
    ndk的一些概念
  • 原文地址:https://www.cnblogs.com/larson/p/1987248.html
Copyright © 2011-2022 走看看