showModalDialog()方法中传入window参数

来源:互联网 发布:淘宝论坛网址 编辑:程序博客网 时间:2024/06/14 11:15

在父窗口中,假如我们是在服务器控件中调用javascript代码的,你可以这样写:
Page.ClientScript.RegisterStartupScript(this.GetType(), "test", "window.showModalDialog('Default4.aspx',window)", true);
Default4.aspx就是子窗口的页面。这里要注意不能使用Page.ClientScript.RegisterClientScriptBlock()因为Block方法会把该script脚本写在所有控件的前面,这样在页面被加载时,TextBox1控件还没有被加载,子窗口就打开了,所以在子窗口时取不到任何控件的值的。而RegisterStartupScript()方法正好相反,他是把对应Script脚本写在所有控件的后面,所以子窗口能够得到父窗口的任何控件的值。
如果你是在客户端写的JavaScript脚本,那就更简单了

<script language="javascript">
    function popwindow()
    ...{
        window.showModalDialog('Default4.aspx',window);
    }
</script>



在子窗口中可写入如下脚本:

<script language="javascript">
       var vwin = window.dialogArguments; //得到window参数
        var doc = vwin.document.getElementById("TextBox1").value; //获得TextBox的值
        alert(doc);
</script>

0 0
原创粉丝点击