js刷新验证码问题

用js控制验证码刷新<scriptlanguage=javascripttype=text/javascript>functionfGetCode(){document.... 用js控制验证码刷新
<script language=javascript type=text/javascript>

function fGetCode()
{

document.getElementById('checkImg').src='/verification/ImageServlet?temp=Math.random()';

}

</script>
<IMG src="/verification/ImageServlet" onclick=" fGetCode()">
为什么只能刷新一次,就是我点击验证码时,会刷新,但是再次点击时就不行了,这是为什么呢?
展开
 我来答
644792799
2012-04-05 · TA获得超过662个赞
知道小有建树答主
回答量:696
采纳率:100%
帮助的人:530万
展开全部
因为你刷新后IMG对象已经变化了,不是原来的图片dom对象了,所以注册的onclick事件也没了,
这样就要找一个固定不变的dom对象来注册事件。
在img外面加个div,把onclick事件加到这个div上
<div onclick="fGetCode()">
<IMG id="checkImg" src="/verification/ImageServlet">
</div>
wsqsxm8077
2013-01-05
知道答主
回答量:4
采纳率:0%
帮助的人:3114
展开全部
问题出在Math.random(),这个获取的是一个浮点小数(0.XXXXXX),所以每次虽然小数不同但是系统会自动变成整数'0’。所以点再多次temp获取到的随即数都是0没有变化,所以获取不到新的验证码,其次src='/verification/ImageServlet?temp=Math.random()'你这种写法有问题,应该写成:src='/verification/ImageServlet?temp=’+Math.random(),建议通过日期函数给temp赋随机值。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
度老虎
推荐于2018-04-23 · TA获得超过1546个赞
知道大有可为答主
回答量:1661
采纳率:100%
帮助的人:2332万
展开全部
<IMG src="/verification/ImageServlet" onclick=" fGetCode()">
这个标签没有ID,改这样看看:
<IMG id="checkImg" src="/verification/ImageServlet" onclick=" fGetCode()">
追问
hh 实际上我是加了id的,只是上面没写出来
追答
那得看看你的ImageServlet程序怎么生成图片了
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chendong0209
2013-04-11
知道答主
回答量:57
采纳率:100%
帮助的人:21.6万
展开全部
你的随机数生成写在引号里边了,会把它当成字符串的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
斜杠设计狮dGfba
2012-08-10
知道答主
回答量:5
采纳率:0%
帮助的人:3.3万
展开全部
onclick="this.src='yzm.php?'+new Date().getTime()";
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式