点击事件验证码不能实现刷新的问题
后台验证码接口地址如下:
${pageContext.request.contextPath}/servlet/validateCodeServlet
当我们写了点击事件后发现没有反应,解决方案是在请求后面添加随机数,代码如下:
var changeImage=function (){
//不需要直接再发一次请求,只需要改变src的地址
var code =document.getElementById("imageCode");
alert('1');
// var ctx=${pageContext.request.contextPath};
var ctx="http://localhost:8080/zhcy/"
console.log(ctx);
var code =document.getElementById("imageCode");
code.src=ctx+"/servlet/validateCodeServlet?"+Math.random();
alert('2');
}
在寻找解决方法的时候发现一种更为精简的:
为了在所有浏览器上都能实现点击验证码的刷新功能,我们可以在上述代码中添加随机参数,对浏览器进行欺骗。
<img src="{
{url('admin/code')}}" alt="" onclick="this.src='{
{url('admin/code')}}?'+Math.random()">
原文链接
还没有评论,来说两句吧...