使用jquery ui dialog ,如何返回值,类似showModelDialog那样放回值。

解决方案 »

  1.   

    他的dialog方法有个okscript的参数
    可以利用他来处理你想要的返回值
      

  2.   

    我如我理解的不错,二楼的大哥是说,OK 按钮可以挂接一个function函数,在这个函数中可以实现对返回值得处理。不知道我理解的对不对,我是新手。
      

  3.   

    function OpenShowContentPnpWin(_Url ,_title)
    {   
        $.blockUI();              
        $.ajax( 
        { 
            url:_Url,        
            dataType: 'html',       
            cache:false, 
            success:function(data) 
            {   
                $.unblockUI();
                
                $('#webengine_dialog_Model').remove();           
                
                //创建model窗口
            $("body").append('<div id="webengine_dialog_Model" title="'+_title+'" style="overflow:auto"></div>');
            
                $("#webengine_dialog_Model").dialog({
            autoOpen: false,
            bgiframe: true,
            modal: true
        });            
                                           
                $("#webengine_dialog_Model").html(data); 
                
                SetInputStyle();
                        
            $("#webengine_dialog_Model").dialog('open');
            var _height_model = $(".queryspace_div").height()+60;
                var _width_model = $(".queryspace_div").width()+30;
                 self.parent.Setheightofmodel(_height_model+100);
                //alert('_height_model='+_height_model+";_width_model="+_width_model );
                
                $('#webengine_dialog_Model').dialog('option', 'width', _width_model);
                $('#webengine_dialog_Model').dialog('option', 'height', _height_model);
                           
                $('#webengine_dialog_Model').dialog('option', 'position', 'center');
               
            }
        }); 
        
      

  4.   

    谢谢楼上代码,学习了.
    上面代码似乎是用了JQuery.ajax()方法把远程页面Get到一个dialog中吧。
    楼主的问题好像是问,怎么从dialog中返回参数,比如是确认,还是取消之类的参数,
    我觉得比如这样实现dialog
    <script> 
    $("#dialog").dialog({autoOpen:false,buttons:{"确定":function(){$(this).dialog("close");}},closeOnEscape:true,hide:"slide",modal:true,title:"对话 框"}).dialog("open"); 
    </script> 
    在buttons:{"确定":function(){$(this).dialog("close");}}的函数中就可以返回参数了。
    这样浅显易懂些吧。
    我理解不对的地方欢迎指教。
      

  5.   

    嗯,我也是在研究这个问题,但是我跟踪程序运行发现jqueryui-dialog的模态其实是一种伪模态,只是添加了一个这遮罩层而非一个真正的模态窗口,所以当你的窗口显示出来时,你的程序已经运行完成了,根本等不到得到返回值。
    我考虑的方法是在窗口调用的时候传递一个对象进去,当窗口关闭时在$(this).dialog("close");的回调里把需要的数据放到传入的对象中去。然后再触发其它的代码来处理这个对象。