FineUI 官方论坛
标题:
问一个isDirty()的问题
[打印本页]
作者:
Kyle_Lee
时间:
2020-3-13 09:33
标题:
问一个isDirty()的问题
doPostBack在后台代码中设置了某个复选框为“选中”状态(实际中为可变量)
UIHelper.CheckBox("ckb_UsingEnable").Checked(true);
复制代码
前端代码中检测此复选框的变化:
<f:CheckBox ID="ckb_UsingEnable" Label="启用" >
<Listeners>
<f:Listener Event="change" Handler="onUsingEnableChange" />
</Listeners>
</f:CheckBox>
复制代码
function onUsingEnableChange() {
if (this.isDirty()) {
F.alert('Has Change');
}
else {
F.alert('No Change');
}
}
复制代码
从”选中“变成”未选中“,会显示”No Change“,
然后从”未选中“变回”选中“,会显示”Has Change“。
UIHelper.CheckBox("ckb_UsingEnable").Checked(true);
UIHelper.GroupPanel("Group_Enables").ClearDirty();
复制代码
再然后,我尝试对复选框的父容器进行
ClearDirty(),结果还是一样。
因此想问问,是我用法不对?还是isDirty()的问题?
作者:
sanshi
时间:
2020-3-15 12:41
可能是注册顺序的问题,可以尝试在页面定义一个JS函数:
function clientJS() {
F.ui.ckb_UsingEnable.setValue(true);
F.ui.Group_Enables.clearDirty();
}
复制代码
然后在后台通过 PageContext.RegisterStartupScript 来调用试下。
欢迎光临 FineUI 官方论坛 (https://fineui.com/BBS/)
Powered by Discuz! X3.4