后台验证码接口地址如下:
${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()">

原文链接

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐