晚上终于解决了我的代码中history与浏览器缓存问题!

王朝other·作者佚名  2006-01-10
窄屏简体版  字體: |||超大  

有很多网站在使用history.go(-1)返回后都可以读出原来文本框中的值,

可是我怎么写返回后文本框中都是空的,似乎把浏览器缓存读不出来!

我写过的代码

<a href="javascript:history.go(-1);">返回</a>

<a href="javascript:history.go(-1); return false;">返回</a>

<a href="" onclick="history.go(-1);return false;">[返回]</a>

<a href="" onclick="history.back(-1);return false;">[返回]</a>

<a href="" onclick="window.history.go(-1);return false;">[返回]</a>

该写的写法都写了,可是还是只能返回 ,不能读出缓存

浏览器也应该没什么问题,因为别人的代码可以正常读出缓存.

经过一段一段代码的排除,终于可以读出缓存了

出现这个问题和是因为session

我的登录页面(php+mysql)

在最开始的时候加了一个session_start();

造成了这个问题!

简单代码:

session_start();

$act = $_REQUEST['act'];

if ($act == in){

//数据库连接函数及登录验证模块

}else{

//{form代码}

}

-------------

session_start();值写入if循环中就好了!

我分析的原因:当session_start()在文件最前面时,从一开始就和服务器建立了联系(session已经发出)

所以以后即使在文本框中输入,也不能加入本地缓存,所以history.go(-1),history.back()等等都是在session发出前的那个文本框为空的界面.

不知道这样理解是否正确?

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航