验证码
<script type="text/javascript">
window.onload = function () {
var validateCode = document.getElementById("validateCode");
validateCode.onclick = function () {
var imageCode = document.getElementById("imageCode");
imageCode.src = "ValidateCodeImage.ashx?d=" + new Date().getMilliseconds();
//请求一个ashx此ashx生成一张验证码图片
//+适用不同浏览器,致每次请求的验证码不是一个URL,否则部分浏览器,由于请求的验证码是同一URL会缓存下来
//导致验证码不变
}
}
</script>
<div>
用户名:<input type="text" name="txtName" /><br />
密码:<input type="text" name="txtPwd" /><br />
验证码:<input type="text" name="txtName" />
<img src="ValidateCodeImage.ashx" id="imageCode" />
<a href="javascript:void(0)" id="validateCode" >看不清</a><br />
<input type="submit" value="登录" />
</div>
ValidateCodeImage.ashx一般处理程序生成验证码图像C#代码
using Common;
using System.Web;
namespace WebApp2019ASPX._04验证码
{
/// <summary>
/// ValidateCodeImage 的摘要说明
/// </summary>
public class ValidateCodeImage : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
//context.Response.Write("Hello World");
ValidateCode vCode = new ValidateCode();//实例化
string codeStr = vCode.CreateValidateCode(4);//拿到验证码
vCode.CreateValidateGraphic(codeStr, context);//将拿到的验证码写成图片 老师以后还要讲HttpContext,现在提前说它就是把浏览器请求过来的数据全封装到这个类里供使用
}
public bool IsReusable
{
get
{
return false;
}
}
}
}

浙公网安备 33010602011771号