模态窗口只有ie支持
最好能拿js模拟出来 

解决方案 »

  1.   

    showModalDialog支持要依靠浏览器用层模拟就行了,弹出层的时候显示一个绝对定位的层遮盖窗体的内容,就是所谓的lightbox效果可以参考这2个tipsWindownymPrompt
      

  2.   

    用层模拟就行了,弹出层的时候显示一个绝对定位的层遮盖窗体的内容,就是所谓的lightbox效果
      

  3.   

    你如果将window换成top呢,看行不行
      

  4.   

    是呀,这个只有IE支持,js模拟怎么模拟?
      

  5.   

    弹出层现在不大符合现在的需求,这是个以前的项目,很多页面都用到这个这个弹出窗口,弹出的还是同一个页面,做成层的话不大合适,就是想让showModalDialog这种能兼容浏览器,或者是类似的实现方式,
      

  6.   

    一定要用jquery吗?
    看看这个   这个是所以的js和页面都在一起,调用当前页面元素  也是模态哦<div id="dlg" class="easyui-dialog" style="width: 300px; height: auto; text-align: center;padding: 10px 20px" closed="true" buttons="#dlg-buttons3">
           <form id="fm" method="post">
                <table>
                </table>
           </form>
    </div>
    $( "#dlg" ).dialog( 'open' ).dialog( 'setTitle', '新增窗口');
            $( "#fm" ).form( 'clear' );
      

  7.   

    弹出层现在不大符合现在的需求,这是个以前的项目,很多页面都用到这个这个弹出窗口,弹出的还是同一个页面,做成层的话不大合适,就是想让showModalDialog这种能兼容浏览器,或者是类似的实现方式,那只能同情你了,低版本的firefox连showModalDialog都不支持。。那你要怎么弄。。O(∩_∩)O哈!
      

  8.   

    弹出层现在不大符合现在的需求,这是个以前的项目,很多页面都用到这个这个弹出窗口,弹出的还是同一个页面,做成层的话不大合适,就是想让showModalDialog这种能兼容浏览器,或者是类似的实现方式,那只能同情你了,低版本的firefox连showModalDialog都不支持。。那你要怎么弄。。O(∩_∩)O哈!
    这真是个问题,好多页面都用到这个窗口,都写在层里面,放到每个页面,也不大现实,工作量太大了,有没有类似打开这个窗口后在父窗口弄上一个层,和弹出层那种效果似的,只不过不是弹出层,而是弹出窗口
      

  9.   


    function OpenWindow(id) {
        var Name = $("#Name").val();
        var url = '**.aspx?Name=' + Name + '&ID=' + id;
        Openwindow(url, "编辑", 450, 650, "tb");      
    }
    var Openwindow = function (urlAddr, Title, height, width, id) {
        var iframe;
        iframe = '<iframe src="' + urlAddr + '" frameborder="0" style="border:0;width:100%;height:98%;"></iframe>';
        parent.$("<div id='dlg' ></div>").window(
        { title: Title,
            height: height,
            width: width,
            resizable: false,
            content: iframe,
            maximizable: false,
            minimizable: false,
            collapsible: false,
            modal: true,
            cache: false,
            onOpen: function (data) {
                parent.$.messager.progress({
                    title: '提示',
                    text: '数据处理中,请稍后....'
                });
            },
            onClose: function () {
                parent.$("#dlg").dialog("destroy").remove();
            },
            onBeforeDestroy: function () {
                $("#" + id).datagrid("reload");
             }
        });
    }这个没问题吧,一个页面打开另外新的一个页面,并且是模态传值
      

  10.   

    把 var Openwindow = function *******
    写在一个js里面,需要打开窗口的页面就引用下,so easy...
      

  11.   

    弹出层现在不大符合现在的需求,这是个以前的项目,很多页面都用到这个这个弹出窗口,弹出的还是同一个页面,做成层的话不大合适,就是想让showModalDialog这种能兼容浏览器,或者是类似的实现方式,那只能同情你了,低版本的firefox连showModalDialog都不支持。。那你要怎么弄。。O(∩_∩)O哈!
    这真是个问题,好多页面都用到这个窗口,都写在层里面,放到每个页面,也不大现实,工作量太大了,有没有类似打开这个窗口后在父窗口弄上一个层,和弹出层那种效果似的,只不过不是弹出层,而是弹出窗口用tipsWindown这个就行了吧,可以用iframe加载你指定的地址,不过要和主页面交互的js代码要修改一下,showModalDialog是通过dialogArgument操作,iframe就是通过parent得到父页的引用。。iframe和父页,window.open打开页面之间的引用关系
      

  12.   

    给个完整的两个页面的代码吧,对JS,Jquery这块确实不大熟,谢谢
      

  13.   

    需要打开窗口的页面就引用下以下的js    写在**.js里面//打开窗体
    var Openwindow = function (urlAddr, Title, height, width, id) {
        var iframe;
        iframe = '<iframe src="' + urlAddr + '" frameborder="0" style="border:0;width:100%;height:98%;"></iframe>';
        parent.$("<div id='dlg' ></div>").window(
        { title: Title,
            height: height,
            width: width,
            resizable: false,
            content: iframe,
            maximizable: false,
            minimizable: false,
            collapsible: false,
            modal: true,
            cache: false,
            onOpen: function (data) {
                parent.$.messager.progress({
                    title: '提示',
                    text: '数据处理中,请稍后....'
                });
            },
            onClose: function () {
                parent.$("#dlg").dialog("destroy").remove();
            },
            onBeforeDestroy: function () {
                $("#" + id).datagrid("reload");
             }
        });
    }
      

  14.   

    A打开B页面
    A页面
    <script src="*jquery-1.8.0.min.js" type="text/javascript"></script>
    <script src="*jquery.easyui.min.js" type="text/javascript"></script>
    <script src="*easyui-lang-zh_CN.js" type="text/javascript"></script>
    <script src="**.js" type="text/javascript"></script>  //这个是刚刚写的js文件
    function OpenWindow(id) {     
        var Name = $("#Name").val();
        var url = 'B.aspx?Name=' + Name + '&ID=' + id;
        Openwindow(url, "编辑学员", 450, 650, "tb");
    }
    <a href='#' class='edit' onclick=OpenWindow(id);>  编辑 </a>
    <div id="tb" pagesize="10"  title="A页面数据列表" pagelist="[10, 20]" pagination="true"  style="  margin-top:20px;"></div>
      

  15.   

    弹出的页面往回传值应该怎么弄,js时直接这么写
    var lx = window.showModalDialog("../SelectDic.aspx?flag="+flag+"&select=1&hinput=3&hname=2&url="+document.all("HiddenUrl").value, "字典选择", "dialogWidth=850px;dialogHeight=500px");
    处理的lx
      

  16.   

    B页面
    后台:        protected string ID;
            protected string Name;
            protected void Page_Load(* *, * *)
            {
                if(!IsPostBack){
                    ID = Request["ID"] + "";
                    Name = Request["Name"] + "";
                }
            }
    var ID = '<%=ID %>';
    var Name = '<%=Name %>';
      

  17.   

    这是在当前页面弄了iframe,不是打开的新窗口呀
      

  18.   

    对,是相当于把新页面放在iframe里面...效果我觉得是可以实现你想要的...