62,046
社区成员
发帖
与我相关
我的任务
分享
<input type="text" id="txtVCode" placeholder="验证码" />
<img src="ValidateCode.ashx" id="imgCode" alt="单击可刷新" />
<a href="javascript:void(0)" onclick="ClickRemoveChangeCode();return false;">看不清</a>
<button type="button" onclick="login()">登录</button>
<script type="text/javascript">
//单击重新改变验证码
function ClickRemoveChangeCode() {
var code = $("#imgCode").attr("src");
$("#imgCode").attr("src", code + "1");
}
function login() {
if ('<%=Session["Validatecode"] %>' != $("#txtVCode").val())
{
alert("validate code is error");
}
alert($("#txtVCode").val());
alert('<%=Session["Validatecode"] %>'); //这里一直为空
}
</script>
public class ValidateCode : IHttpHandler, IRequiresSessionState
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "image/jpeg";
System.Drawing.Image ima = BytesToImage(CheckCode(context));
ima.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
}
public bool IsReusable
{
get
{
return false;
}
}
/// <summary>
/// 验证码的校验
/// </summary>
/// <param name="context"></param>
/// <returns></returns>
protected System.Drawing.Image CheckCode(HttpContext context)
{
//生成验证码
Common.ValidateCode validateCode = new Common.ValidateCode();
string code = validateCode.CreateValidateCode(4);
context.Session["Validatecode"] = code; //生成验证码时记录session
return validateCode.CreateValidateGraphic(code);
}
}