我设置了AutoPostBack="True",刚开始的时候是可以执行CheckedChanged事件的。
后来添加了客户端的onclick事件,是在page_load中这样添加的 chbAllSKU.Attributes.Add("onclick", "return chbAllSKUClick(this)");
然后就不执行后台的CheckedChanged事件了,但是客户端的chbAllSKUClick(this)事件正常
chbAllSKU.Attributes.Add("onclick", "return chbAllSKUClick(this)");
如果去掉return的话,就会执行后台事件。但是chbAllSKUClick(this)事件的作用是弹出一个确认框,要求点了确定就执行CheckedChanged,否则不执行
checkbox不执行CheckedChanged事件
答案:4 悬赏:80 手机版
解决时间 2021-01-31 14:30
- 提问者网友:轮囘Li巡影
- 2021-01-31 08:18
最佳答案
- 五星知识达人网友:愁杀梦里人
- 2021-01-31 09:16
可能是复选框的程序代码有问题。
选定复选框控件时,这个控件就显示选定标记,可用分组的复选框控件显示几个选项,和Windows中的复选框一样,可以从中选择一个或几个选项。正常情况下,一选定复选框,就会执行CheckedChanged事件。
复选框控件的Value属性表明复选框当前处于哪种状态——选定、未选定还是处于不可用状态。
单击复选框控件,可以使它处于选定或未选定状态,然后可以检测控件的Value属性,并根据这个信息编写代码以执行某些操作。若要预先在一列复选框中选定几个复选框,可以在属性窗口中设定它的Value属性的值为Checked。
有时可能希望在满足条件之后禁用复框,可以把Value属性设置为Grayed以禁用复选框。
但是实际上,把Value设置为Grayed并不能真正地禁用复选框。要想真正禁用复选框,应该使用Enabled属性。
选定复选框控件时,这个控件就显示选定标记,可用分组的复选框控件显示几个选项,和Windows中的复选框一样,可以从中选择一个或几个选项。正常情况下,一选定复选框,就会执行CheckedChanged事件。
复选框控件的Value属性表明复选框当前处于哪种状态——选定、未选定还是处于不可用状态。
单击复选框控件,可以使它处于选定或未选定状态,然后可以检测控件的Value属性,并根据这个信息编写代码以执行某些操作。若要预先在一列复选框中选定几个复选框,可以在属性窗口中设定它的Value属性的值为Checked。
有时可能希望在满足条件之后禁用复框,可以把Value属性设置为Grayed以禁用复选框。
但是实际上,把Value设置为Grayed并不能真正地禁用复选框。要想真正禁用复选框,应该使用Enabled属性。
全部回答
- 1楼网友:摆渡翁
- 2021-01-31 11:45
if(checkbox.value == "true" || check.value == “false”)
checkbox.checkedchanged += null;
else
checkbox.checkedchanged += new system.eventhandler(this.checkbox_checkedchanged);
private void checkbox_checkedchanged(object sender, eventargs e)
{
///...代码
}
- 2楼网友:街头电车
- 2021-01-31 10:24
你是把 chbAllSKU.Attributes.Add("onclick", "return chbAllSKUClick(this)"); 放在 if (!IsPostBack)
{里面吗}
- 3楼网友:拜訪者
- 2021-01-31 10:03
教你个办法
在页面上添加一个隐藏框,HiddenField1
page_load中这样添加的 chbAllSKU.Attributes.Add("onclick", "chbAllSKUClick()");
chbAllSKUClick方法这样写
function chbAllSKUClick()
{
if(document.getElementById("chkVenStatus").checked)
{
if(confirm("您确定吗")){document.getElementById("HiddenField1").value="1"; }else{document.getElementById("HiddenField1").value="0";}
}
}
然后在CheckedChanged方法中判断隐藏框的值
protected void chbAllSKU_CheckedChanged(object sender, EventArgs e)
{
//获取赋值后的隐藏框,如果等于1,那么就是对话框被选择“是”
if (HiddenField1.Value == "1")
{
//这里写处理代码......
}
}
这样就能实现你所说的那个效果
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯