|  RSS订阅  |  加入收藏

TP5框架下验证码自动刷新的问题

TP5的验证码扩展在执行error方法回跳后不能自动刷新,利用js函数来执行刷新动作。
摘要
...

这其实又是一篇初级水文,一转眼7月已经到下旬了,看着归档数据上的数字心里有点惊吓。因为博主的前端很菜,菜到需要经常记录函数来帮助自己学习前端。本文应用场景很简单,就是验证码验证失败进行error回跳的时候并没有执行刷新,因为TP5的error方法执行的跳转地址默认是javascript:history.back(-1);所以,页面并没有刷新,验证码也就没有刷新操作。



通常页面上载入验证码我们是通过这样来实现的:<img src="{:captcha_src()}" onclick="this.src='{:captcha_src()}?'+Math.random()" />,这个时候我们点击验证码会执行onclick函数,刷新验证码。而error回跳并不会执行onclick函数,所以验证码也就无法刷新了。


解决办法也很简单,先写这样一段js函数。

未标题-1.jpg

然后把我们的验证码加上id属性id="vcode"。最后在body中onload一下上面的函数名即可<body onload="refresh()">


水完了,捂脸逃。PS,我是标题党,因为这不是TP5的锅。


打赏
  ThinkPHP    验证码    
转载请注明出处,未经许可禁止商用!
西枫里 熊掌号
代码改变世界 ———— 半路出家,全程修道
发表评论
*依据《网络安全法》规定,您需实名认证后才能评论!
话说最近大佬跑哪里去了!
日常催更团报道~
20天没有更新啦
看不懂,记得之前写验证码,我都是直接ajax调用的
你这的代码我学不来,但是水文技巧我倒是学的很好,嘿嘿
不水
大佬水文都水得这么有深度,哈哈
不水,比我厉害多啦 我就是前端小白
涨姿势了 onload绑定body~~