FineUI 官方论坛

标题: 新手请教一个confirm的问题 [打印本页]

作者: wtjzx    时间: 2015-3-13 14:14
标题: 新手请教一个confirm的问题
页面定义了一个btn_del,其属性为中有confirm text="您确认删除选择项吗?",在btn_del_click中需要判断删除的这条记录是否被别人引用,如果被别人引用需要提示用户,我的代码如下:
///summarry
函数判断是否引用
///summarry
public bool Query_yy(id)
{
………………
if(……)return true else return false;
}

protected void btn_del_click(Object sender,EventArgs e)
{
    if(Query_yy(id))
   {
       Confirm.show("已被别人引用,是否删除?","提示",MessageBoxIcon.Warning);
       DelPor(id);
   }
}


protected void DelPro(string id )
{
     string sql ="delete from a where id="+id;
     DbHelp.executesql(sql);
}
执行的时候,无论用户怎么选择,都会执行DelPro过程。我也试过将Confirm.show替换成PageContext.registerstartupscript(confirm.getshowrenference("已被别人引用,是否删除?","提示",MessageBoxIcon.Warning,okscript,cancelscript)),但不知道如何将我的DelPro作为OKscript来执行,CancelScript应该怎么写?请各位大侠、版主赐教!!!

作者: zy32002    时间: 2015-3-13 14:46
官网的例子都看下,1个小时大体能了解了。
http://fineui.com/demo/#/demo/other/confirm_cancel2.aspx
作者: wtjzx    时间: 2015-3-13 17:07
zy32002 发表于 2015-3-13 14:46
官网的例子都看下,1个小时大体能了解了。
http://fineui.com/demo/#/demo/other/confirm_cancel2.aspx ...

首先,谢谢你的回答。忘了说了,我用的不是专业版,而且版本比较低,在PageManager中没有自定义的事件,你给的例子发帖前已试过。
作者: zy32002    时间: 2015-3-13 18:58
wtjzx 发表于 2015-3-13 17:07
首先,谢谢你的回答。忘了说了,我用的不是专业版,而且版本比较低,在PageManager中没有自定义的事件, ...

这是开源版4.X的例子,都是好用的
作者: IT刀客    时间: 2015-3-18 12:59
关于较低版本confirm无法阻止程序运行是因为这个confirm是通过JS在客户端运行的,用DIV模拟的一个对话框。由于这个原因,无法阻止后端程序的运行。
如果你一定要阻止程序运行,你可以在CS里使用原生的JS脚本来阻止程序执行,确认后程序才会继续执行;如果觉得原生的JS产生的对话框太丑,你可以通过讲一个DIV服务端化去实现,具体如下:
<div id="alert1" runat="server" Visiable="false">是否确定要删除?<asp:button  id="btnDel" runat="server" onClick="你的执行事件" Text="确定"></div>
在cs端,当触发删除按钮事件时后端this.alert1.visiable="true";接下来就是执行div中的button事件了。
这样就可以实现你的要求了。
作者: IT刀客    时间: 2015-3-18 13:04
如果还有什么疑问,欢迎追问。欢饮关注《FineUI三十六技》系列视频教程




欢迎光临 FineUI 官方论坛 (https://fineui.com/BBS/) Powered by Discuz! X3.4