none
如何在ASP.NET中弹出关机效果的dialog RRS feed

  • 问题

  • 我使用jquery的Dialog插件,可以实现弹出一个漂亮的层,但是后台无法取得值,而且运行后,弹出的层在Form外面。所以后台事件也无法运行

    所以还有什么办法能够弹出一个Dialog,比如做一个登录框!点击登录取得上面的值,然后进入后台事件进行判断!

    推荐一下还有什么办法可以实现这个效果吗?

    2010年12月8日 4:09

答案

  • 你好

    function scriptClick(arg) {
                $.ajax({
                    type: "post",
                    contentType: "application/x-www-form-urlencoded",
                    url: "Handler.ashx?u=" + Math.random(),     //记得添加Handler.ashx这个文件  随机数必须要添加 否则js判定为同一请求后就不允许提交了
                    data: { id: [arg] },  //传入的参数
                    dateType: 'html',
                    success: function(result) {
                        //成功之后的处理函数  result 为ashx处理文件中Response.Write的结果  可以在这里关闭Dialog
                    }
                });
            };

     

    具体请参见jQuery Ajax

    http://api.jquery.com/jQuery.ajax/
    2010年12月9日 4:27
  • 至于ashx中并官方并没有给出.NET的方案

    public void ProcessRequest(HttpContext context)

    {

        context.Response.ContentType = "text/plain";

        var arg = context.Request.Form["arg"];  //这里是你用到的参数

        //处理请求

        context.Response.Write("success");

        context.Response.End();

    }

     

    Good luck!

    2010年12月9日 4:35
  • 你好:

    你可以使用ajax来提交。要么就使用jquery.form插件来提交一个form到服务器端。也就是使用js来将要提前的标签添加到可以提交的form中去。

     


    I am here!
    2010年12月9日 6:44
    版主

全部回复

  • 你好

    或者你可以使用 ASP.NET AJAX TOOLKIT 的 MODALPOPUP 控制看看

    http://www.asp.net/ajax/ajaxcontroltoolkit/samples/modalpopup/modalpopup.aspx

    Please correct me if my concept is wrong


    Chi
    2010年12月8日 6:49
  • jQuery 的 BlockUI 也可以做到,而且更容易 ...http://jquery.malsup.com/block/
    小朱的技術隨手寫:http://www.dotblogs.com.tw/regionbbs/
    目前籌建雲端運算學堂 (studyazure.com) 中...
    2010年12月8日 8:11
  • 你还没清楚web程序的机制啊。

    <as:Button onclick= 不就是进入后台的事件了吗

     

    ajax也能执行后台的事件 啊


    【孟子E章】
    2010年12月9日 1:03
    版主
  • 好歹也玩几年.NET了 我会不知道用onclick事件?

    我用开发人员工具跟了一下,弹出的层在页面源代码里面就是在FORM外面的!

    所以无法用onclick进入后台事件!

    只能执行javascrip脚本

    我想知道有什么办法可以进入后台事件。

    现在我知道有一种方法就是再加一个隐藏按钮写一个后台事件

    然后在弹出层的按钮用javascript调用隐藏按钮的事件,就可以进入隐藏按钮的后台事件。

    但是这样子也不是什么特别好的办法!

    我如果要去弹出层的文本框值还是取不到


    30%技术+70%精神
    2010年12月9日 3:57
  • jQuery 的 BlockUI 也可以做到,而且更容易 ...http://jquery.malsup.com/block/
    小朱的技術隨手寫:http://www.dotblogs.com.tw/regionbbs/
    目前籌建雲端運算學堂 (studyazure.com) 中...


    我刚刚试过了。但是不符合我做的东西!

    不过能了解到BlockUI,以后说不定能用得上,谢谢!


    30%技术+70%精神
    2010年12月9日 4:06
  • 你好

    function scriptClick(arg) {
                $.ajax({
                    type: "post",
                    contentType: "application/x-www-form-urlencoded",
                    url: "Handler.ashx?u=" + Math.random(),     //记得添加Handler.ashx这个文件  随机数必须要添加 否则js判定为同一请求后就不允许提交了
                    data: { id: [arg] },  //传入的参数
                    dateType: 'html',
                    success: function(result) {
                        //成功之后的处理函数  result 为ashx处理文件中Response.Write的结果  可以在这里关闭Dialog
                    }
                });
            };

     

    具体请参见jQuery Ajax

    http://api.jquery.com/jQuery.ajax/
    2010年12月9日 4:27
  • 至于ashx中并官方并没有给出.NET的方案

    public void ProcessRequest(HttpContext context)

    {

        context.Response.ContentType = "text/plain";

        var arg = context.Request.Form["arg"];  //这里是你用到的参数

        //处理请求

        context.Response.Write("success");

        context.Response.End();

    }

     

    Good luck!

    2010年12月9日 4:35
  • 你好

    function scriptClick(arg) {
                $.ajax({
                    type: "post",
                    contentType: "application/x-www-form-urlencoded",
                    url: "Handler.ashx?u=" + Math.random(),     //记得添加Handler.ashx这个文件  随机数必须要添加 否则js判定为同一请求后就不允许提交了
                    data: { id: [arg] },  //传入的参数
                    dateType: 'html',
                    success: function(result) {
                        //成功之后的处理函数  result 为ashx处理文件中Response.Write的结果  可以在这里关闭Dialog
                    }
                });
            };

     

    具体请参见jQuery Ajax

    http://api.jquery.com/jQuery.ajax/
    谢谢,了解了!
    30%技术+70%精神
    2010年12月9日 4:40
  • 你好:

    你可以使用ajax来提交。要么就使用jquery.form插件来提交一个form到服务器端。也就是使用js来将要提前的标签添加到可以提交的form中去。

     


    I am here!
    2010年12月9日 6:44
    版主