关于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编辑  收藏  举报

导航