首先我们做个测试:
写一段JS提交一个表单:
theForm.action=”test.php?id=1″;
theForm.submit();
在test.php里打印来路页面:
die($_SERVER[“HTTP_REFERER”]);
然后分别在Firefox和IE里面查看test.php页面,发现均显示test.php。
接下来,将上述JS更换为:
location.href=”test.php?id=1″;
即改用GET方式提交表单。然后再次查看test.php页面,会发现Firefox仍然显示test.php,而IE显示空白。
这说明IE并不将location.href属性的更改视为一次点击链接的过程。
o?这样哦。谢谢!
赞赞
不是這樣吧,我也碰到過這樣的問題,看了看手冊,手冊上是這樣寫的
链接到当前页面的前一页面的 URL 地址。不是所有的用户代理(浏览器)都会设置这个变量,而且有的还可以手工修改 HTTP_REFERER。因此,这个变量不总是正确真实的。
赞赞
是的,看来写程序的时候不能一味依赖这个变量,尤其是涉及界面逻辑的时候。
ajax的应用就可以规避这个问题了,呵呵。
赞赞