使用form表单提交数据打开两个页面的问题

来源:互联网 发布:学java有前途吗 编辑:程序博客网 时间:2024/06/07 03:04

1.实现到顶端的功能<a href="#"></a>。这样在IE和火狐中都可以。

2.在使用form表单将a页面中的数据提交到b页面(只包含js和java),通过b页面中的判断来打开c页面。但打开c页面的同时也打开了b页面。此时就一共打开空白b页面和c页面。要是在b页面中body添加onload="window.close(window.name)"后,b页面会自动关闭,但是会弹出是否关闭的弹出层,用户体验不是很好。所以添加onload="window.opener=null;  window.open('', '_self', ''); window.close();"该段js语句会实现不弹出提示而直接关闭浏览器窗口。


js关闭当前窗口,window.close()就可以,不过它会出个提示“您查看的网页正在试图关闭窗口。是否关闭窗口?”,如何才能不弹出这个提示?

“如果你第一次打开这个网页,window.close()就会弹出提示,如果这个网页是由其它的网页window.open()出来的页面,window.close()时,就不会出现提示;

<script language="JavaScript" type="text/javascript">
function cl()
{
window.opener='';
window.close();
}
</script>

上面的方法是当前页面的opener赋为空字符串(空字串可不是null,并不是为空),然后关闭当前页,做个按钮来触发这个方法;
<input type="submit" onclick="cl()" name="Submit" value="提交" />点击即关闭了当前窗口,且没有提示;

也有可能会用在框架页面,就是frame的子页中,那么上面的代码应该写成

<script language="JavaScript" type="text/javascript">
function cl()
{
window.top.opener='';
window.top.close();
}
</script>

经试验IE7、IE8 即使使用上面的方法,仍然会弹出提示(窗口时href链接打开的),使用下面的脚本

    <script language="JavaScript" type="text/javascript">
        function closeWindow()
        {
        window.opener=null;
       window.open('', '_self', ''); 
       window.close(); 
        }
    </script>

能同时解决IE6、IE7、IE8 的问题


原创粉丝点击