您的位置:首页 > 编程语言 > Java开发

javaweb 开发网上书店--之验证码

2011-11-30 00:51 267 查看
验证码既可以在JSP实现也可以在Servlet里实现,原理是一样的

遇到的问题就是刷新验证码时没反应,问题解决如下:

 

function refresh(){

    var date = new Date();

    document.getElementById("valid").src="validate.jsp?d="+date.getTime();//调用刷新验证码,也可以传个随机参数,用Random,主要是为了清空缓存,使验证码更新;
   }

 

<div style="margin-top: 15px;display: inline;">

     验证码:

     <input type="text" name="authcode" value="" /> 

     <img alt="验证码" src="validate.jsp" id="valid" name="valid">

    </div>

               <span style="cursor: pointer;color:BLUE;background-color: black;" onclick="refresh();">[看不清楚,换一张]</span>

    <div style="margin-left: 25px; margin-top: 15px;">

     <input type="button" id="lb" style="width:50px" onclick="check();" value="确定"/>

 

其中validate.jsp 是生成验证码的页面,我试过在验证码生成页面validate.jsp设置

<meta http-equiv="pragma" content="no-cache">

 <meta http-equiv="cache-control" content="no-cache">

 <meta http-equiv="expires" content="0">  



response.setHeader("cache-control","no-cache");

response.setHeader("pragma","no-cache");

response.setHeader("expires","0");

然而并没有卵用,照理说response.setHeader("cache-control","no-cache")。。。。;;之后,问题应该与传递个随机参数(系统时间之类)一样可以解决,但是他就是不行,也许是不同浏览器缓存的不同(问题是我试过了三个浏览器还是不行。一个是火狐,一个是IE、360),也许是有一两次可以吧,这点我也不是很懂,知道的大哥大姐小弟小妹还请多多指教下。。。。

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息