模态窗口 打开及取得相应的值

本文介绍了一个使用JavaScript实现的模态对话框交互案例,其中包括主窗口与模态窗口之间的数据传递逻辑。通过检测浏览器是否支持`showModalDialog`方法来决定使用何种方式打开模态窗口,并定义了回调函数处理返回的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

主窗口js代码:


    <script language="javascript" type="text/javascript">
        function addinfos(txtbox)
        {
            if (window.showModalDialog!=null)
            {
                var smd= window.showModalDialog("AddInfos.aspx","","dialogWidth:400px;dialogHeight:270px;status:no;help:no;scrolling=no;scrollbars=no");
                if(smd!=null)
                {
                    document.getElementById(txtbox).value+=smd;
                    checkMobile(document.getElementById(txtbox).value);
                }
                return;
            }
            else
            {
                this.returnAction=function(strResult)
                {
                    if(strResult!=null)
                    {
                        document.getElementById(txtbox).value+=strResult;
                        checkMobile(document.getElementById(txtbox).value);
                    }
                }
                window.open("AddInfos.aspx","","width=400,height=270,menubar=no,toolbar=no,location=no,scrollbars=no,status=no,modal=yes");
                return;
            }
        }
        
        function limitNum(obj)
        {
            if(obj.value.replace(/[/d+]/ig,"").length>0)
            {
                obj.value="";
                alert('请输入数字');
            }
        }
       
        var re=/^[A-Za-z0-9]*$/;  
        function limitLengh(obj)
        {
            if(re.test(obj.value)==false)
            {
                obj.value="";
                alert("只能输入字母和数字!");
            }
            else
            {
                if(obj.value.length<3)
                {
                    obj.value="";
                    alert("请输入3个字符指令!");
                }
            }
        }

    </script>

 

模态窗口js页面代码:

 

<script language="javascript" type="text/javascript">
        $(document).ready(function(){
            $('#addbtn').click(function(){
                if(window.window.showModalDialog!=null)
                {
                    parent.window.returnValue=GetString();
                    window.close();
                }
                else
                {
                    window.opener.returnAction(GetString());
                    top.close();
                }
            });
            $('#btnclose').click(function(){
                if(window.window.showModalDialog!=null)
                {
                    window.close();
                }
                else
                {
                    top.close();
                }
            });
        });
       
        function GetString()
        {
            var str="";
            return str;
        }
    </script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值