关于Asp.NET中验证码点击刷新问题
一、验证码产生
当我在开发.NET网页的时候,发现大家使用验证码时都是在旁边提供一个"看不清,换一张"的方式,我也是一个庸人,所以也同样这么设置:
<img style ="vertical-align:middle;" src="./Number.aspx" id="check" onclick="refresh()" alt="请输入验证码,看不清楚?点击换一个" />
其中1、Number.aspx是验证码产生代码段。
2、refresh()是图片切换函数。
在这当中“document.all.check.src=‘’”纯利用check.src重新配置并不能实现图片的更新及验证码重新产生,后来通过多种方式的试验,发现对其进行参数配置传送可以击发1、《Number.aspx》页面重新调用。
通过.NET进行随机数生产,当点击传递参数刷新图片直接进行页面重新激活:
function refresh(){
var num = Math.ceil(Math.random()*100);
document.all.check.src = "./Number.aspx?Num="+num;
}
达到验证码点击图片更新功能。
二、AJax 获取Session验证码信息。
1.在Page_Load中调用如下代码。
AjaxPro.Utility.RegisterTypeForAjax(typeof(class));
2.当调用Session需要如下配置。
[AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.Read)]
public string Ajax()
{
if (Session["Number"]!=null){
return Session["Number"].ToString();
}else{
return "";
}
}
3.在js中调用AJax 函数。
var Num = AjaxSpace.class.Ajax().value;
posted on 2012-04-17 09:50 黄兆张's Blog 阅读(3451) 评论(2) 编辑 收藏 举报