首页 新闻 会员 周边 捐助

百度模态确认窗口和服务器端button结合的回调方法?

0
悬赏园豆:180 [已解决问题] 解决于 2009-02-24 15:40

最近在开发一个b/s架构的项目..对弹窗的要求比较高,,于是在园子里找到了 百度模态窗口 一文..地址是
http://www.cnblogs.com/coding1016/archive/2008/06/07/1215531.html

主要有两个文件 popup.js和popupclass.js两个文件...如下

 

popup.js

 

 

 

pupclass.js

 

在 popup.js文件中有这样两个方法

 function ShowConfirm(title,confirmCon,id,str,width,height)
        {
            var pop=new Popup({ contentType:3,isReloadOnClose:false,width:width,height:height});
            pop.setContent("title",title);
            pop.setContent("confirmCon",confirmCon);
            pop.setContent("callBack",ShowCallBack);
            pop.setContent("parameter",{id:id,str:str,obj:pop});
            pop.build();
            pop.show();
        }

  说明:title弹出确认框的标题
       confirm弹出确认框的内容
       id 点击确定后要触发事件的控件ID
       str 传值 (保留)
       width 弹出确认框的宽度
       height 弹出确认矿的高度

 

  function ShowCallBack(para)
        {
            var o_pop = para["obj"]
            var obj = document.getElementById(para["id"]);
            o_pop.close();
            obj.click();
        }
说明:showCallBack(para)是用产生回调的


现在我想实现这样一种效果...

在aspx文件中有一个服务器端控件button,想要点击button的时候在客户端弹出百度的确认模态窗口...只有在用户点击 ok 的情况下才执行button的服务端事件...

我是这样调用的

 

test.aspx

 

 

test.aspx.cs

 

当我点击 button1后。可以弹出百度的确认窗口...可是点击的同时也执行了button的服务端事件。。。

我想实现只有点击百度确认窗口的ok按钮后才执行button1的服务器端事件。。请问应该怎样实现?

博尔赫斯的主页 博尔赫斯 | 初学一级 | 园豆:20
提问于:2009-02-21 14:10
< >
分享
最佳答案
0

确实存在这种现象,你可以把服务器控件Button隐藏掉,使用html Button,在回回调中调用服务器控件Button.

侯垒 | 老鸟四级 |园豆:3435 | 2009-02-21 21:13
其他回答(1)
0

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        this.Button1.Attributes.Add("onclick", "javascript:return confirm('你确吗?')");
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        this.Label1.Text = "你点击了按钮";
    }
}

 

 

<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label></div>
    </form>
</body>
</html>

刚刚实验过,只有弹出的确认框你确认后才会执行后台代码,否则不执行。

你可以试试,

张蒙蒙 | 园豆:405 (菜鸟二级) | 2009-02-22 11:47
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册