无法刷新验证码

作者:vkvi 来源:ITPOW(原创) 日期:2007-5-8

问:我在提交系统中做了一个验证码,为了避免验证码看不清,我为其加上了刷新链接,点击一下链接,就刷新验证码,可是实际操作中发现根本没有动作。

我的代码是:

<img src="code.asp" alt="验证码" id="codeImg" />
<a href="#" onclick="javascript:document.getElementById('codeImg').src='code.asp';return false;">看不清楚?请点这里刷新</a>

答:这是一个很隐蔽的错误,程序上没有任何语法和运行时错误。没有正常工作的原因是我们验证码图片的 src 地址“不对”,由于每次都请求同一个地址 code.asp,所以 IE 浏览器、FF 浏览器都不会重新读取数据,我们要做的是换成一个不一样的地址,同时又不要影响程序。最简单的办法就是加上无意义的随机参数,虽然服务器端不处理这些参数,但是浏览器会认为是新地址,就会重新读取数据了。代码如下:

<img src="code.asp" alt="验证码" id="codeImg" />
<a href="#" onclick="javascript:document.getElementById('codeImg').src='code.asp?' + Math.random();return false;">看不清楚?请点这里刷新</a>

网友评论

  • 写得不错,哈哈(220.191.*.* 2007-08-07 14:24:48)
相关文章