域名频道-专业提供域名注册,网站空间,集团邮局等服务  
首页 域名注册 虚拟主机 独立主机 应用服务 集团邮局 网站建设 网站推广 代理专区 客户中心 购物车
域名服务,域名注册
文章搜索


本类TOP10
·使DataList控件有...
·网页制作问与答
·fso组件之删除文件
·企业网站,什么内容最重要...
·怎样在1个页面里面,得到...
·IIS 错误代码大汇总
·企业网站建设的六大功能
·如何决定网站建设采用动态...
·调用WEB.config...
·一套实用的网页配色方案
当前位置:域名频道首页 > 常见问题 > 网页制作
打开新的窗口与保住页面的referrer

作者:网站制作部 来自:域名频道 点击:0 时间:2006-9-11

我们通常的需要打开新窗口的时候,会采用下面三者之一:(我不知道是否还有其他方法)

1.通过链接打开新的页面
<a href="http://www.simplelife.cn" target="_blank">Open a new window
</a>

2.通过javascript的window.open()函数打开新的窗口
<script>
window.open("http://www.simplelife.cn");
</script>

3.通过Form表单提交到新的页面
<form action="http://www.simplelife.cn" target="_blank">
Open a new window
</form>

有的时候,我们不但要打开新窗口,而且还想让打开的新窗口有referrer信息,以便统计来路。

通过实验发现:在firefox浏览器下,上面的三种方式在新窗口中都可以顺利的保留referrer,而在IE浏览器下,第二种方式不能保留referrer。

在某种应用场合下,例如在打开窗口前需要做一些数据验证操作等的时候,不允许我们使用链接来打开新窗口,而必须使用JavaScript来打开新窗口,这时候如果还需要保留referrer,经过实验只能使用下面的方式:

<font onclick="Go('http://www.dn110.cn')">Go</font>
<form name=JumpForm id=JumpForm action="" target="_blank" Method=Post>
</form>
<script>
function Go(url){
var form = document.getElementById("JumpForm");
form.action=url;
form.submit();
}
</script>

有的时候,需要跳转的URL是需要参数的,形如:
http://www.dns110.com/news/ndetail.asp?nid=94

这时如果使用Form表单的Get方式提交,将会造成URL携带的参数无法传送过去,只能使用Post方式提交,所以上面的程序使用Post方式提交表单。

这样:既可以打开新窗口,又可以保留referrer的完整解决办法出炉了。

 

[关闭窗口]
关于我们 联系方式 付款事宜 招聘启事 网站地图 友情链接 虚拟主机 法律顾问

Copyright 2000-2006 域名频道(www.DNS110.com)
地址:上海市松江区新松江路1188弄37号 邮编:201620
电话:021-67820741 67820742 67820743 传真:转分机805 值班电话:021-67820743
在线支持QQ:219854 Email:support@dns110.com