• 模态对话框【转】


    web模态窗口window.showModalDialog简介

    1、基本知识

    showModalDialog() (IE 4+ 支持)

    showModelessDialog() (IE 5+ 支持)

    window.showModalDialog()方法用来创建一个显示HTML内容的模态对话框。

    window.showModelessDialog()方法用来创建一个显示HTML内容的非模态对话框。


    2、使用方法

    vReturnValue=window.showModalDialog(sURL[,vArguments][,sFeatures]);

    vReturnValue=window.showModelessDialog(sURL[,vArguments][,sFeatures]);


    3、参数说明:

    参数名称 性质 类型 作用
    sURL 必选 字符串 用来指定对话框要显示的网页的URL
    vArguments 可选 变体 用来向对话框传递参数,参数类型不限。对话框通过window.dialogArguments来取得传递进来的参数
    sFeatures 可选 字符串 用来描述对话框的外观等信息

    4、sFeatures参数说明:

    参数名称          参数属性            说明
    dialogHeight npx 对话框高度,不小于100px
    dialogWidth npx 对话框宽度
    dialogLeft npx 离主窗口左的距离
    dialogTop npx 离主窗口上的距离
    center {yes | no | 1 | 0 } 窗口是否居中,默认yes
    help {yes | no | 1 | 0 } 是否显示帮助按钮,默认yes
    resizable {yes | no | 1 | 0 } 是否可改变大小,默认no
    status {yes | no | 1 | 0 } 是否显示状态栏,默认为yes[ Modeless]或no[Modal]
    dialogHide { yes | no | 1 | 0 | on | off } 在打印或者打印预览时对话框是否隐藏,默认为no
    scroll { yes | no | 1 | 0 | on | off } 指明对话框是否显示滚动条,默认为yes
    edge { sunken | raised } 指明对话框的边框样式,默认为raised
    unadorned { yes | no | 1 | 0 | on | off } 默认为no
    注意:dialogHide,edge,unadorned这三个属性是用在HTA(HTML Aplication)中的,一般网页上用不到。 


    5、参数传递:

    通过vArguments来传递参数,类型不限制,对于字符串类型,最大为4096个字符,也可以传递对象

    例如:

    parent.htm  <script> window.showModalDialog("sun.htm","传递进去的参数","help:no;scroll:no"); </script>

    sun.htm       <script> alert("传来的参数:" + window.dialogArguments); </script> 


    6、返回值:

    通过window.returnValue向打开对话框的窗口返回信息,也可以是对象。

    例如:

    parent.htm    <script> result=window.showModalDialog("son.htm","","help:no;scroll:no"); alert(result); </script>
    son.htm         <script> window.returnValue="这里存放返回的结果"; </script>


    7、防止在模态窗口中提交后新开一窗口:

    在页面的 <body>前加入<base target="_self">    


    8、调用父窗口的方法同时传递参数:

    parent.htm <script> function show(){//父窗口的方法 alert("show"); } var arg=new Object();//传递进去的参数 arg.win=window;//把当前窗口的引用当参数传进去 arg.str="argument";//要传进去的其他参数 window.showModalDialog("son.htm",arg,'help:no'); </script>

    son.htm <script> var arg=window.dialogArguments; alert(arg.str); arg.win.show();//调用父窗口的方法 </script>


    相关

    1 刷新子窗体

    把子窗体放进iframe,即:   

    showmodaldialog("test.htm","","") test.htm如下: <iframe src="真实页面.htm"></iframe>

    以上转自:http://blog.csdn.net/cnham/archive/2008/07/05/2613649.aspx


    模态窗口使用:
    模态窗口在关闭时候,会有一个返回值,可以用来两个窗口之间交互。模态窗口打开后,父窗口将不能进行操作,必须对模态窗口操作完毕后,才能对父页面或其他页面进行操作。
    模态窗口内可以嵌套一个iframe,用来解决页面与后台交互时候产生的问题。即借助一个中转页面,来调用实际的弹出窗口。
    例子:
    打开模态窗口
    function addNotify()
    {
        //此处打开模态窗口,等待对窗口的操作。关闭时候,返回值给myvalue
        var myvalue=window.showModalDialo("AddNotify.htm","","dialogWidth:425px;dialogHeight:375px;status:no;scroll:no;");
        //判断返回值,进行相应操作
        if(myvalue==1)
        {
            window.location.reload();
        }
    }
    关闭模态窗口
    function closeWin()
    {
        window.parent.close();
        window.returnValue=1;
    }


    链接调用javascript
    <a href="javascript:add()"></a>  函数
    <a href="javacsript:alter('你好')"></a> 代码

     /******************************************************************************************
     *【Author】:dfzone
     *【Date】:2013年06月25日
     *【Notice】:
     *1、本文为原创技术文章,首发博客园个人站点(http://blog.csdn.net/dfzone/article/details/4852548),转载和引用请注明作者及出处。
     *2、本文必须全文转载和引用,任何组织和个人未授权不能修改任何内容,并且未授权不可用于商业。
     *3、本声明为文章一部分,转载和引用必须包括在原文中。
     ******************************************************************************************/

  • 相关阅读:
    ES5特性Object.seal
    自定义右键菜单中bug记录
    ie9及以下不兼容event.target.dataset对象
    创建一个新数组并指定数组的长度
    vue组件的配置属性
    前端模板引擎和网络协议分类
    Python查询Mysql时返回字典结构的代码
    Python实现计算圆周率π的值到任意位的方法示例
    Python实现计算圆周率π的值到任意位的方法示例
    Python实现的计算马氏距离算法示例
  • 原文地址:https://www.cnblogs.com/armyant/p/3155806.html
Copyright © 2020-2023  润新知