ASP.NET Core 如何实现验证码刷新

ASP.NET Core如何实现验证码这里不作赘述,网上都能搜到。这里要说的是,假设我们已经有了实现验证码的方法,那么如何实现点击验证码就能刷新的效果。

假设后台的请求验证码的路由为/Home/ValidateCode,那么页面第一次加载验证码时,验证码图片的html代码为

1
<img src="/Home/ValidateCode" />

这段代码,在图片加载时,可以自动向后台发起请求,得到验证码。

那么如何做到点击图片,刷新验证码呢?同样非常简单。我们修改一下

1
<img src="/Home/ValidateCode" onclick="refresh(this)" />

脚本js代码

1
2
3
4
5
function refresh(e) {
var date = new Date();
var el = e.srcElement || e.currentTarget; //兼容火狐和谷歌浏览器
el.src = '/Home/ValidateCode?t=' + date.getTime(); //刷新验证码
}

只要在请求后面加上一个时间戳参数,即能实现最简单地刷新验证码的方法,确实很简洁。

avatar

chilihotpot

You Are The JavaScript In My HTML