Asp.net2005不用Ajax实现无刷新验证用户名、密码和中文验证码
主要功能:无刷新实现对用户名,密码,中文验证码的验证!
技术要点:使用.NEt2005中新接口“ICallbackEventHandler”用asp.net动态生成中文验证码
话不多说,直接看代码,
只要有两个页面 Login.aspx 和 ImageR .aspx
Login.aspx 的代码如下:
 <%
      
      
        @PageLanguage
      
      
        =
      
      
        "
      
      
        C#
      
      
        "
      
      
        AutoEventWireup
      
      
        =
      
      
        "
      
      
        true
      
      
        "
      
      
        CodeFile
      
      
        =
      
      
        "
      
      
        Login.aspx.cs
      
      
        "
      
      
        Inherits
      
      
        =
      
      
        "
      
      
        Login
      
      
        "
      
      
      
      
        %>
      
        <%
      
      
        @PageLanguage
      
      
        =
      
      
        "
      
      
        C#
      
      
        "
      
      
        AutoEventWireup
      
      
        =
      
      
        "
      
      
        true
      
      
        "
      
      
        CodeFile
      
      
        =
      
      
        "
      
      
        Login.aspx.cs
      
      
        "
      
      
        Inherits
      
      
        =
      
      
        "
      
      
        Login
      
      
        "
      
      
      
      
        %>
      
      
         
         <!
      
      
        DOCTYPEhtmlPUBLIC
      
      
        "
      
      
        -//W3C//DTDXHTML1.0Transitional//EN
      
      
        "
      
      
      
      
        "
      
      
        http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
      
      
        "
      
      
        >
      
      
        <!
      
      
        DOCTYPEhtmlPUBLIC
      
      
        "
      
      
        -//W3C//DTDXHTML1.0Transitional//EN
      
      
        "
      
      
      
      
        "
      
      
        http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
      
      
        "
      
      
        >
      
      
         
         <
      
      
        htmlxmlns
      
      
        =
      
      
        "
      
      
        http://www.w3.org/1999/xhtml
      
      
        "
      
      
      
      
        >
      
      
        <
      
      
        htmlxmlns
      
      
        =
      
      
        "
      
      
        http://www.w3.org/1999/xhtml
      
      
        "
      
      
      
      
        >
      
      
         <
      
      
        headrunat
      
      
        =
      
      
        "
      
      
        server
      
      
        "
      
      
        >
      
      
        <
      
      
        headrunat
      
      
        =
      
      
        "
      
      
        server
      
      
        "
      
      
        >
      
      
         <
      
      
        title
      
      
        >
      
      
        Login
      
      
        </
      
      
        title
      
      
        >
      
      
        <
      
      
        title
      
      
        >
      
      
        Login
      
      
        </
      
      
        title
      
      
        >
      
      
         <
      
      
        scriptlanguage
      
      
        =
      
      
        "
      
      
        javascript
      
      
        "
      
      
        type
      
      
        =
      
      
        "
      
      
        text/javascript
      
      
        "
      
      
        >
      
      
        <
      
      
        scriptlanguage
      
      
        =
      
      
        "
      
      
        javascript
      
      
        "
      
      
        type
      
      
        =
      
      
        "
      
      
        text/javascript
      
      
        "
      
      
        >
      
      
         vardiv;
        vardiv;
         functioncallback()
        functioncallback()
         {
        
      
      
      
        
          {
           varname
        
        
          =
        
        
          document.getElementById(
        
        
          "
        
        
          UserName
        
        
          "
        
        
          ).value;
          varname
        
        
          =
        
        
          document.getElementById(
        
        
          "
        
        
          UserName
        
        
          "
        
        
          ).value;
           varpass
        
        
          =
        
        
          document.getElementById(
        
        
          "
        
        
          PassWord
        
        
          "
        
        
          ).value;
          varpass
        
        
          =
        
        
          document.getElementById(
        
        
          "
        
        
          PassWord
        
        
          "
        
        
          ).value;
           varcheckcode
        
        
          =
        
        
          document.getElementById(
        
        
          "
        
        
          CheckCode
        
        
          "
        
        
          ).value;
          varcheckcode
        
        
          =
        
        
          document.getElementById(
        
        
          "
        
        
          CheckCode
        
        
          "
        
        
          ).value;
           div
        
        
          =
        
        
          document.getElementById(
        
        
          "
        
        
          show_msg
        
        
          "
        
        
          );
          div
        
        
          =
        
        
          document.getElementById(
        
        
          "
        
        
          show_msg
        
        
          "
        
        
          );
           div.innerHTML
        
        
          =
        
        
        
        
          "
        
        
          <imgsrc=img/loading.gif>
        
        
          "
        
        
          +
        
        
        
        
          '
        
        
          正在加载,请稍后.....
        
        
          '
        
        
          ;
          div.innerHTML
        
        
          =
        
        
        
        
          "
        
        
          <imgsrc=img/loading.gif>
        
        
          "
        
        
          +
        
        
        
        
          '
        
        
          正在加载,请稍后.....
        
        
          '
        
        
          ;
           div.style.backgroundColor
        
        
          =
        
        
          "
        
        
          AliceBlue
        
        
          "
        
        
          ;
          div.style.backgroundColor
        
        
          =
        
        
          "
        
        
          AliceBlue
        
        
          "
        
        
          ;
           dos(name
        
        
          +
        
        
          "
        
        
          &
        
        
          "
        
        
          +
        
        
          pass
        
        
          +
        
        
          "
        
        
          &
        
        
          "
        
        
          +
        
        
          checkcode);
          dos(name
        
        
          +
        
        
          "
        
        
          &
        
        
          "
        
        
          +
        
        
          pass
        
        
          +
        
        
          "
        
        
          &
        
        
          "
        
        
          +
        
        
          checkcode);
           }
          }
        
      
      
         functionReceiveServerData(text)
        functionReceiveServerData(text)
         {
        
      
      
      
        
          {
           alert(text);
          alert(text);
           div.style.display
        
        
          =
        
        
          "
        
        
          none
        
        
          "
        
        
          ;
          div.style.display
        
        
          =
        
        
          "
        
        
          none
        
        
          "
        
        
          ;
           location.href
        
        
          =
        
        
          location.href;
          location.href
        
        
          =
        
        
          location.href;
           }
          }
        
      
      
         functionover(o)
        functionover(o)
         {
        
      
      
      
        
          {
           o.style.borderColor
        
        
          =
        
        
          "
        
        
          #9ECC00
        
        
          "
        
        
          ;
          o.style.borderColor
        
        
          =
        
        
          "
        
        
          #9ECC00
        
        
          "
        
        
          ;
           }
          }
        
      
      
         function
      
      
        out
      
      
        (o)
        function
      
      
        out
      
      
        (o)
         {
        
      
      
      
        
          {
           o.style.borderColor
        
        
          =
        
        
          "
        
        
          #A9BAC9
        
        
          "
        
        
          ;
          o.style.borderColor
        
        
          =
        
        
          "
        
        
          #A9BAC9
        
        
          "
        
        
          ;
           }
          }
        
      
      
         </
      
      
        script
      
      
        >
      
      
        </
      
      
        script
      
      
        >
      
      
         </
      
      
        head
      
      
        >
      
      
        </
      
      
        head
      
      
        >
      
      
         <
      
      
        body
      
      
        >
      
      
        <
      
      
        body
      
      
        >
      
      
         <
      
      
        formid
      
      
        =
      
      
        "
      
      
        form1
      
      
        "
      
      
        runat
      
      
        =
      
      
        "
      
      
        server
      
      
        "
      
      
        >
      
      
        <
      
      
        formid
      
      
        =
      
      
        "
      
      
        form1
      
      
        "
      
      
        runat
      
      
        =
      
      
        "
      
      
        server
      
      
        "
      
      
        >
      
      
         <
      
      
        div
      
      
        >
      
      
        <
      
      
        div
      
      
        >
      
      
         <
      
      
        tablestyle
      
      
        =
      
      
        "
      
      
        width:218px;height:96px;
      
      
        "
      
      
        >
      
      
        <
      
      
        tablestyle
      
      
        =
      
      
        "
      
      
        width:218px;height:96px;
      
      
        "
      
      
        >
      
      
         <
      
      
        tr
      
      
        >
      
      
        <
      
      
        tr
      
      
        >
      
      
         <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        width:35px
      
      
        "
      
      
        >
      
      
        <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        width:35px
      
      
        "
      
      
        >
      
      
         <
      
      
        asp:LabelID
      
      
        =
      
      
        "
      
      
        Label1
      
      
        "
      
      
        runat
      
      
        =
      
      
        "
      
      
        server
      
      
        "
      
      
        Text
      
      
        =
      
      
        "
      
      
        UserName
      
      
        "
      
      
      
      
        ></
      
      
        asp:Label
      
      
        ></
      
      
        td
      
      
        >
      
      
        <
      
      
        asp:LabelID
      
      
        =
      
      
        "
      
      
        Label1
      
      
        "
      
      
        runat
      
      
        =
      
      
        "
      
      
        server
      
      
        "
      
      
        Text
      
      
        =
      
      
        "
      
      
        UserName
      
      
        "
      
      
      
      
        ></
      
      
        asp:Label
      
      
        ></
      
      
        td
      
      
        >
      
      
         <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        width:205px
      
      
        "
      
      
        >
      
      
        <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        width:205px
      
      
        "
      
      
        >
      
      
         <
      
      
        inputid
      
      
        =
      
      
        "
      
      
        UserName
      
      
        "
      
      
        type
      
      
        =
      
      
        "
      
      
        text
      
      
        "
      
      
        style
      
      
        =
      
      
        "
      
      
        border-style:groove;border-color:#A9BAC9;width:148px
      
      
        "
      
      
        onmouseout
      
      
        =
      
      
        "
      
      
        out(this)
      
      
        "
      
      
        onmouseover
      
      
        =
      
      
        "
      
      
        over(this)
      
      
        "
      
      
      
      
        /></
      
      
        td
      
      
        >
      
      
        <
      
      
        inputid
      
      
        =
      
      
        "
      
      
        UserName
      
      
        "
      
      
        type
      
      
        =
      
      
        "
      
      
        text
      
      
        "
      
      
        style
      
      
        =
      
      
        "
      
      
        border-style:groove;border-color:#A9BAC9;width:148px
      
      
        "
      
      
        onmouseout
      
      
        =
      
      
        "
      
      
        out(this)
      
      
        "
      
      
        onmouseover
      
      
        =
      
      
        "
      
      
        over(this)
      
      
        "
      
      
      
      
        /></
      
      
        td
      
      
        >
      
      
         </
      
      
        tr
      
      
        >
      
      
        </
      
      
        tr
      
      
        >
      
      
         <
      
      
        tr
      
      
        >
      
      
        <
      
      
        tr
      
      
        >
      
      
         <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        width:35px;height:12px;
      
      
        "
      
      
        >
      
      
        <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        width:35px;height:12px;
      
      
        "
      
      
        >
      
      
         <
      
      
        asp:LabelID
      
      
        =
      
      
        "
      
      
        Label2
      
      
        "
      
      
        runat
      
      
        =
      
      
        "
      
      
        server
      
      
        "
      
      
        Text
      
      
        =
      
      
        "
      
      
        PassWord
      
      
        "
      
      
        Width
      
      
        =
      
      
        "
      
      
        44px
      
      
        "
      
      
        ></
      
      
        asp:Label
      
      
        ></
      
      
        td
      
      
        >
      
      
        <
      
      
        asp:LabelID
      
      
        =
      
      
        "
      
      
        Label2
      
      
        "
      
      
        runat
      
      
        =
      
      
        "
      
      
        server
      
      
        "
      
      
        Text
      
      
        =
      
      
        "
      
      
        PassWord
      
      
        "
      
      
        Width
      
      
        =
      
      
        "
      
      
        44px
      
      
        "
      
      
        ></
      
      
        asp:Label
      
      
        ></
      
      
        td
      
      
        >
      
      
         <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        width:205px;height:12px;
      
      
        "
      
      
        >
      
      
        <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        width:205px;height:12px;
      
      
        "
      
      
        >
      
      
         <
      
      
        inputid
      
      
        =
      
      
        "
      
      
        PassWord
      
      
        "
      
      
        type
      
      
        =
      
      
        "
      
      
        password
      
      
        "
      
      
        style
      
      
        =
      
      
        "
      
      
        border-style:groove;border-color:#A9BAC9;width:148px
      
      
        "
      
      
        onmouseout
      
      
        =
      
      
        "
      
      
        out(this)
      
      
        "
      
      
        onmouseover
      
      
        =
      
      
        "
      
      
        over(this)
      
      
        "
      
      
      
      
        /></
      
      
        td
      
      
        >
      
      
        <
      
      
        inputid
      
      
        =
      
      
        "
      
      
        PassWord
      
      
        "
      
      
        type
      
      
        =
      
      
        "
      
      
        password
      
      
        "
      
      
        style
      
      
        =
      
      
        "
      
      
        border-style:groove;border-color:#A9BAC9;width:148px
      
      
        "
      
      
        onmouseout
      
      
        =
      
      
        "
      
      
        out(this)
      
      
        "
      
      
        onmouseover
      
      
        =
      
      
        "
      
      
        over(this)
      
      
        "
      
      
      
      
        /></
      
      
        td
      
      
        >
      
      
         </
      
      
        tr
      
      
        >
      
      
        </
      
      
        tr
      
      
        >
      
      
         <
      
      
        tr
      
      
        >
      
      
        <
      
      
        tr
      
      
        >
      
      
         <
      
      
        td
      
      
        >
      
      
        <
      
      
        td
      
      
        >
      
      
         <
      
      
        asp:ImageID
      
      
        =
      
      
        "
      
      
        Image1
      
      
        "
      
      
        runat
      
      
        =
      
      
        "
      
      
        server
      
      
        "
      
      
        ImageUrl
      
      
        =
      
      
        "
      
      
        ImageR.aspx
      
      
        "
      
      
      
      
        /></
      
      
        td
      
      
        >
      
      
        <
      
      
        asp:ImageID
      
      
        =
      
      
        "
      
      
        Image1
      
      
        "
      
      
        runat
      
      
        =
      
      
        "
      
      
        server
      
      
        "
      
      
        ImageUrl
      
      
        =
      
      
        "
      
      
        ImageR.aspx
      
      
        "
      
      
      
      
        /></
      
      
        td
      
      
        >
      
      
         <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        height:13px;width:205px;
      
      
        "
      
      
        >
      
      
        <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        height:13px;width:205px;
      
      
        "
      
      
        >
      
      
         <
      
      
        inputid
      
      
        =
      
      
        "
      
      
        CheckCode
      
      
        "
      
      
        style
      
      
        =
      
      
        "
      
      
        border-style:groove;border-color:#A9BAC9;width:55px
      
      
        "
      
      
        onmouseout
      
      
        =
      
      
        "
      
      
        out(this)
      
      
        "
      
      
        onmouseover
      
      
        =
      
      
        "
      
      
        over(this)
      
      
        "
      
      
        type
      
      
        =
      
      
        "
      
      
        text
      
      
        "
      
      
        maxlength
      
      
        =
      
      
        "
      
      
        4
      
      
        "
      
      
      
      
        /></
      
      
        td
      
      
        >
      
      
        <
      
      
        inputid
      
      
        =
      
      
        "
      
      
        CheckCode
      
      
        "
      
      
        style
      
      
        =
      
      
        "
      
      
        border-style:groove;border-color:#A9BAC9;width:55px
      
      
        "
      
      
        onmouseout
      
      
        =
      
      
        "
      
      
        out(this)
      
      
        "
      
      
        onmouseover
      
      
        =
      
      
        "
      
      
        over(this)
      
      
        "
      
      
        type
      
      
        =
      
      
        "
      
      
        text
      
      
        "
      
      
        maxlength
      
      
        =
      
      
        "
      
      
        4
      
      
        "
      
      
      
      
        /></
      
      
        td
      
      
        >
      
      
         
         </
      
      
        tr
      
      
        >
      
      
        </
      
      
        tr
      
      
        >
      
      
         <
      
      
        tr
      
      
        >
      
      
        <
      
      
        tr
      
      
        >
      
      
         <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        height:26px
      
      
        "
      
      
        >
      
      
        <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        height:26px
      
      
        "
      
      
        >
      
      
         </
      
      
        td
      
      
        >
      
      
        </
      
      
        td
      
      
        >
      
      
         <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        width:205px;height:26px
      
      
        "
      
      
        >
      
      
        <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        width:205px;height:26px
      
      
        "
      
      
        >
      
      
         <
      
      
        inputid
      
      
        =
      
      
        "
      
      
        Login
      
      
        "
      
      
        type
      
      
        =
      
      
        "
      
      
        button
      
      
        "
      
      
        value
      
      
        =
      
      
        "
      
      
        登 陆
      
      
        "
      
      
        onclick
      
      
        =
      
      
        "
      
      
        callback()
      
      
        "
      
      
        style
      
      
        =
      
      
        "
      
      
        width:60px
      
      
        "
      
      
      
      
        />
      
      
        <
      
      
        inputid
      
      
        =
      
      
        "
      
      
        Login
      
      
        "
      
      
        type
      
      
        =
      
      
        "
      
      
        button
      
      
        "
      
      
        value
      
      
        =
      
      
        "
      
      
        登 陆
      
      
        "
      
      
        onclick
      
      
        =
      
      
        "
      
      
        callback()
      
      
        "
      
      
        style
      
      
        =
      
      
        "
      
      
        width:60px
      
      
        "
      
      
      
      
        />
      
      
         </
      
      
        td
      
      
        >
      
      
        </
      
      
        td
      
      
        >
      
      
         </
      
      
        tr
      
      
        >
      
      
        </
      
      
        tr
      
      
        >
      
      
         <
      
      
        tr
      
      
        >
      
      
        <
      
      
        tr
      
      
        >
      
      
         <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        width:35px;
      
      
        "
      
      
        >
      
      
        <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        width:35px;
      
      
        "
      
      
        >
      
      
         </
      
      
        td
      
      
        >
      
      
        </
      
      
        td
      
      
        >
      
      
         <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        width:205px;
      
      
        "
      
      
        >
      
      
        <
      
      
        tdstyle
      
      
        =
      
      
        "
      
      
        width:205px;
      
      
        "
      
      
        >
      
      
         <
      
      
        divid
      
      
        =
      
      
        "
      
      
        show_msg
      
      
        "
      
      
        ></
      
      
        div
      
      
        >
      
      
        <
      
      
        divid
      
      
        =
      
      
        "
      
      
        show_msg
      
      
        "
      
      
        ></
      
      
        div
      
      
        >
      
      
         </
      
      
        td
      
      
        >
      
      
        </
      
      
        td
      
      
        >
      
      
         </
      
      
        tr
      
      
        >
      
      
        </
      
      
        tr
      
      
        >
      
      
         </
      
      
        table
      
      
        >
      
      
        </
      
      
        table
      
      
        >
      
      
         
         </
      
      
        div
      
      
        >
      
      
        </
      
      
        div
      
      
        >
      
      
         </
      
      
        form
      
      
        >
      
      
        </
      
      
        form
      
      
        >
      
      
         </
      
      
        body
      
      
        >
      
      
        </
      
      
        body
      
      
        >
      
      
         </
      
      
        html
      
      
        >
      
      
        </
      
      
        html
      
      
        >
      
    
Login.aspx.cs 的代码如下:这个页面实现自 ICallbackEventHandler 接口
 using
      
      
        System;
      
        using
      
      
        System;
         using
      
      
        System.Data;
      
      
        using
      
      
        System.Data;
         using
      
      
        System.Configuration;
      
      
        using
      
      
        System.Configuration;
         using
      
      
        System.Collections;
      
      
        using
      
      
        System.Collections;
         using
      
      
        System.Web;
      
      
        using
      
      
        System.Web;
         using
      
      
        System.Web.Security;
      
      
        using
      
      
        System.Web.Security;
         using
      
      
        System.Web.UI;
      
      
        using
      
      
        System.Web.UI;
         using
      
      
        System.Web.UI.WebControls;
      
      
        using
      
      
        System.Web.UI.WebControls;
         using
      
      
        System.Web.UI.WebControls.WebParts;
      
      
        using
      
      
        System.Web.UI.WebControls.WebParts;
         using
      
      
        System.Web.UI.HtmlControls;
      
      
        using
      
      
        System.Web.UI.HtmlControls;
         
         public
      
      
      
      
        partial
      
      
      
      
        class
      
      
        Login:System.Web.UI.Page,ICallbackEventHandler
      
      
        public
      
      
      
      
        partial
      
      
      
      
        class
      
      
        Login:System.Web.UI.Page,ICallbackEventHandler
         {
        
      
      
      
        
          {
           private
        
        
        
        
          string
        
        
          result;
        
        
          private
        
        
        
        
          string
        
        
          result;
           protected
        
        
        
        
          void
        
        
          Page_Load(
        
        
          object
        
        
          sender,EventArgse)
        
        
          protected
        
        
        
        
          void
        
        
          Page_Load(
        
        
          object
        
        
          sender,EventArgse)
           {
          
        
        
        
          
            {
             if
          
          
            (
          
          
            !
          
          
            Page.IsPostBack)
          
          
            if
          
          
            (
          
          
            !
          
          
            Page.IsPostBack)
             {
            
          
          
          
            
              {
               string
            
            
              cbReference
            
            
              =
            
            
              Page.ClientScript.GetCallbackEventReference(
            
            
              this
            
            
              ,
            
            
              "
            
            
              text
            
            
              "
            
            
              ,
            
            
              "
            
            
              ReceiveServerData
            
            
              "
            
            
              ,
            
            
              ""
            
            
              );
            
            
              //
            
            
              获取一个对客户端函数的引用;调用该函数时,将启动一个对服务器端事件的客户端回调。
            
            
              string
            
            
              cbReference
            
            
              =
            
            
              Page.ClientScript.GetCallbackEventReference(
            
            
              this
            
            
              ,
            
            
              "
            
            
              text
            
            
              "
            
            
              ,
            
            
              "
            
            
              ReceiveServerData
            
            
              "
            
            
              ,
            
            
              ""
            
            
              );
            
            
              //
            
            
              获取一个对客户端函数的引用;调用该函数时,将启动一个对服务器端事件的客户端回调。
            
            
               string
            
            
              callbackScript
            
            
              =
            
            
            
            
              "
            
            
              functiondos(text){
            
            
              "
            
            
            
            
              +
            
            
              cbReference
            
            
              +
            
            
            
            
              "
            
            
              ;}
            
            
              "
            
            
              ;
            
            
              //
            
            
              注册客户端方法
            
            
            
            
              string
            
            
              callbackScript
            
            
              =
            
            
            
            
              "
            
            
              functiondos(text){
            
            
              "
            
            
            
            
              +
            
            
              cbReference
            
            
              +
            
            
            
            
              "
            
            
              ;}
            
            
              "
            
            
              ;
            
            
              //
            
            
              注册客户端方法
            
            
               Page.ClientScript.RegisterClientScriptBlock(
            
            
              this
            
            
              .GetType(),
            
            
              "
            
            
              dos
            
            
              "
            
            
              ,callbackScript,
            
            
              true
            
            
              );
            
            
              //
            
            
              向客户端写入脚本块
            
            
              Page.ClientScript.RegisterClientScriptBlock(
            
            
              this
            
            
              .GetType(),
            
            
              "
            
            
              dos
            
            
              "
            
            
              ,callbackScript,
            
            
              true
            
            
              );
            
            
              //
            
            
              向客户端写入脚本块
            
            
               }
            
            
              }
            
          
          
             }
            }
          
        
        
           ///
          
          
          
          
            <summary>
          
        
        
        
          
            ///
          
          
          
          
            <summary>
          
          
             ///
          
          
            处理回调事件。
          
          
            ///
          
          
            处理回调事件。
             ///
          
          
          
          
            </summary>
          
          
            ///
          
          
          
          
            </summary>
          
          
             ///
          
          
          
          
            <paramname="text"></param>
          
          
            ///
          
          
          
          
            <paramname="text"></param>
          
          
          
        
         public
        
        
        
        
          void
        
        
          RaiseCallbackEvent(
        
        
          string
        
        
          text)
        
        
        
          public
        
        
        
        
          void
        
        
          RaiseCallbackEvent(
        
        
          string
        
        
          text)
           {
          
        
        
        
          
            {
             string
          
          
            checkcode
          
          
            =
          
          
            (
          
          
            string
          
          
            )Session[
          
          
            "
          
          
            Code
          
          
            "
          
          
            ];
          
          
            string
          
          
            checkcode
          
          
            =
          
          
            (
          
          
            string
          
          
            )Session[
          
          
            "
          
          
            Code
          
          
            "
          
          
            ];
             string
          
          
            []j
          
          
            =
          
          
            text.Split(
          
          
            new
          
          
          
          
            char
          
          
            []
          
          
          
            
              {
            
            
              '
            
            
              &
            
            
              '
            
            
              }
            
          
          
            ,
          
          
            3
          
          
            );
            
          
          
            string
          
          
            []j
          
          
            =
          
          
            text.Split(
          
          
            new
          
          
          
          
            char
          
          
            []
          
          
          
            
              {
            
            
              '
            
            
              &
            
            
              '
            
            
              }
            
          
          
            ,
          
          
            3
          
          
            );
             if
          
          
            (j[
          
          
            2
          
          
            ]
          
          
            !=
          
          
            checkcode)
          
          
            if
          
          
            (j[
          
          
            2
          
          
            ]
          
          
            !=
          
          
            checkcode)
             result
          
          
            =
          
          
          
          
            "
          
          
            验证码错误!请重新输入
          
          
            "
          
          
            ;
            result
          
          
            =
          
          
          
          
            "
          
          
            验证码错误!请重新输入
          
          
            "
          
          
            ;
             else
          
          
          
          
            if
          
          
            (j[
          
          
            0
          
          
            ]
          
          
            ==
          
          
          
          
            "
          
          
            1111
          
          
            "
          
          
          
          
            &&
          
          
            j[
          
          
            1
          
          
            ]
          
          
            ==
          
          
          
          
            "
          
          
            2222
          
          
            "
          
          
            )
          
          
            else
          
          
          
          
            if
          
          
            (j[
          
          
            0
          
          
            ]
          
          
            ==
          
          
          
          
            "
          
          
            1111
          
          
            "
          
          
          
          
            &&
          
          
            j[
          
          
            1
          
          
            ]
          
          
            ==
          
          
          
          
            "
          
          
            2222
          
          
            "
          
          
            )
             result
          
          
            =
          
          
          
          
            "
          
          
            登陆成功!
          
          
            "
          
          
            ;
            result
          
          
            =
          
          
          
          
            "
          
          
            登陆成功!
          
          
            "
          
          
            ;
             else
          
          
            else
          
          
             result
          
          
            =
          
          
          
          
            "
          
          
            登陆失败!
          
          
            "
          
          
            ;
            result
          
          
            =
          
          
          
          
            "
          
          
            登陆失败!
          
          
            "
          
          
            ;
             }
            }
          
        
        
           ///
          
          
          
          
            <summary>
          
        
        
        
          
            ///
          
          
          
          
            <summary>
          
          
             ///
          
          
            返回回调事件的结果。
          
          
            ///
          
          
            返回回调事件的结果。
             ///
          
          
          
          
            </summary>
          
          
            ///
          
          
          
          
            </summary>
          
          
             ///
          
          
          
          
            <returns></returns>
          
          
            ///
          
          
          
          
            <returns></returns>
          
          
          
        
         public
        
        
        
        
          string
        
        
          GetCallbackResult()
        
        
        
          public
        
        
        
        
          string
        
        
          GetCallbackResult()
           {
          
        
        
        
          
            {
             return
          
          
            result;
          
          
            return
          
          
            result;
             }
            }
          
        
        
           
           }
          }
        
      
      
         
      
    
ImageR .aspx 页面无内容,主要在 ImageR .aspx.cs里 代码如下:
 using
      
      
        System;
      
        using
      
      
        System;
         using
      
      
        System.Drawing;
      
      
        using
      
      
        System.Drawing;
         using
      
      
        System.Drawing.Imaging;
      
      
        using
      
      
        System.Drawing.Imaging;
         using
      
      
        System.Drawing.Drawing2D;
      
      
        using
      
      
        System.Drawing.Drawing2D;
         
         public
      
      
      
      
        partial
      
      
      
      
        class ImageR
      
      
        :System.Web.UI.Page
      
      
        public
      
      
      
      
        partial
      
      
      
      
        class ImageR
      
      
        :System.Web.UI.Page
         {
        
      
      
      
        
          {
           protected
        
        
        
        
          void
        
        
          Page_Load(
        
        
          object
        
        
          sender,EventArgse)
        
        
          protected
        
        
        
        
          void
        
        
          Page_Load(
        
        
          object
        
        
          sender,EventArgse)
           {
          
        
        
        
          
            {
             CreateCheckCodeImage(GenCode(
          
          
            4
          
          
            ));
            CreateCheckCodeImage(GenCode(
          
          
            4
          
          
            ));
             }
            }
          
        
        
           ///
          
          
          
          
            <summary>
          
        
        
        
          
            ///
          
          
          
          
            <summary>
          
          
             ///
          
          
            '产生随机字符串
          
          
            ///
          
          
            '产生随机字符串
             ///
          
          
          
          
            </summary>
          
          
            ///
          
          
          
          
            </summary>
          
          
             ///
          
          
          
          
            <paramname="num">
          
          
            随机出几个字符
          
          
            </param>
          
          
            ///
          
          
          
          
            <paramname="num">
          
          
            随机出几个字符
          
          
            </param>
          
          
             ///
          
          
          
          
            <returns>
          
          
            随机出的字符串
          
          
            </returns>
          
          
            ///
          
          
          
          
            <returns>
          
          
            随机出的字符串
          
          
            </returns>
          
          
          
        
         private
        
        
        
        
          string
        
        
          GenCode(
        
        
          int
        
        
          num)
        
        
        
          private
        
        
        
        
          string
        
        
          GenCode(
        
        
          int
        
        
          num)
           {
          
        
        
        
          
            {
             string
          
          
            str
          
          
            =
          
          
          
          
            "
          
          
            的一是在不了有和人这中大为上个国我以要他时来用们生到作地于出就分对成会可主发年动同工也能下过子说产种面而方后多定行学法所民得经十三之进着等部度家电力里如水化高自二理起小物现实加量都两体制机当使点从业本去把性好应开它合还因由其些然前外天政四日那社义事平形相全表间样与关各重新线内数正心反你明看原又么利比或但质气第向道命此变条只没结解问意建月公无系军很情者最立代想已通并提直题党程展五果料象员革位入常文总次品式活设及管特件长求老头基资边流路级少图山统接知较将组见计别她手角期根论运农指几九区强放决西被干做必战先回则任取据处队南给色光门即保治北造百规热领七海口东导器压志世金增争济阶油思术极交受联什认六共权收证改清己美再采转更单风切打白教速花带安场身车例真务具万每目至达走积示议声报斗完类八离华名确才科张信马节话米整空元况今集温传土许步群广石记需段研界拉林律叫且究观越织装影算低持音众书布复容儿须际商非验连断深难近矿千周委素技备半办青省列习响约支般史感劳便团往酸历市克何除消构府称太准精值号率族维划选标写存候毛亲快效斯院查江型眼王按格养易置派层片始却专状育厂京识适属圆包火住调满县局照参红细引听该铁价严
          
          
            "
          
          
            ;
          
          
            string
          
          
            str
          
          
            =
          
          
          
          
            "
          
          
            的一是在不了有和人这中大为上个国我以要他时来用们生到作地于出就分对成会可主发年动同工也能下过子说产种面而方后多定行学法所民得经十三之进着等部度家电力里如水化高自二理起小物现实加量都两体制机当使点从业本去把性好应开它合还因由其些然前外天政四日那社义事平形相全表间样与关各重新线内数正心反你明看原又么利比或但质气第向道命此变条只没结解问意建月公无系军很情者最立代想已通并提直题党程展五果料象员革位入常文总次品式活设及管特件长求老头基资边流路级少图山统接知较将组见计别她手角期根论运农指几九区强放决西被干做必战先回则任取据处队南给色光门即保治北造百规热领七海口东导器压志世金增争济阶油思术极交受联什认六共权收证改清己美再采转更单风切打白教速花带安场身车例真务具万每目至达走积示议声报斗完类八离华名确才科张信马节话米整空元况今集温传土许步群广石记需段研界拉林律叫且究观越织装影算低持音众书布复容儿须际商非验连断深难近矿千周委素技备半办青省列习响约支般史感劳便团往酸历市克何除消构府称太准精值号率族维划选标写存候毛亲快效斯院查江型眼王按格养易置派层片始却专状育厂京识适属圆包火住调满县局照参红细引听该铁价严
          
          
            "
          
          
            ;
             char
          
          
            []chastr
          
          
            =
          
          
            str.ToCharArray();
          
          
            char
          
          
            []chastr
          
          
            =
          
          
            str.ToCharArray();
             //
          
          
            string[]source={"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","#","$","%","&","@"};
          
          
            //
          
          
            string[]source={"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","#","$","%","&","@"};
          
          
             string
          
          
            code
          
          
            =
          
          
          
          
            ""
          
          
            ;
          
          
          
          
            string
          
          
            code
          
          
            =
          
          
          
          
            ""
          
          
            ;
             Randomrd
          
          
            =
          
          
          
          
            new
          
          
            Random();
            Randomrd
          
          
            =
          
          
          
          
            new
          
          
            Random();
             int
          
          
            i;
          
          
            int
          
          
            i;
             for
          
          
            (i
          
          
            =
          
          
          
          
            0
          
          
            ;i
          
          
            <
          
          
            num;i
          
          
            ++
          
          
            )
          
          
            for
          
          
            (i
          
          
            =
          
          
          
          
            0
          
          
            ;i
          
          
            <
          
          
            num;i
          
          
            ++
          
          
            )
             {
            
          
          
          
            
              {
               //
            
            
              code+=source[rd.Next(0,source.Length)];
            
            
              //
            
            
              code+=source[rd.Next(0,source.Length)];
            
            
               code
            
            
              +=
            
            
              str.Substring(rd.Next(
            
            
              0
            
            
              ,str.Length),
            
            
              1
            
            
              );
            
            
              code
            
            
              +=
            
            
              str.Substring(rd.Next(
            
            
              0
            
            
              ,str.Length),
            
            
              1
            
            
              );
               }
              }
            
          
          
             return
          
          
            code;
          
          
            return
          
          
            code;
             
             }
            }
          
        
        
           
           ///
          
          
          
          
            <summary>
          
        
        
        
          
            ///
          
          
          
          
            <summary>
          
          
             ///
          
          
            生成图片(增加背景噪音线、前景噪音点)
          
          
            ///
          
          
            生成图片(增加背景噪音线、前景噪音点)
             ///
          
          
          
          
            </summary>
          
          
            ///
          
          
          
          
            </summary>
          
          
             ///
          
          
          
          
            <paramname="checkCode">
          
          
            随机出字符串
          
          
            </param>
          
          
            ///
          
          
          
          
            <paramname="checkCode">
          
          
            随机出字符串
          
          
            </param>
          
          
          
        
         private
        
        
        
        
          void
        
        
          CreateCheckCodeImage(
        
        
          string
        
        
          checkCode)
        
        
        
          private
        
        
        
        
          void
        
        
          CreateCheckCodeImage(
        
        
          string
        
        
          checkCode)
           {
          
        
        
        
          
            {
             if
          
          
            (checkCode.Trim()
          
          
            ==
          
          
          
          
            ""
          
          
          
          
            ||
          
          
            checkCode
          
          
            ==
          
          
          
          
            null
          
          
            )
          
          
            if
          
          
            (checkCode.Trim()
          
          
            ==
          
          
          
          
            ""
          
          
          
          
            ||
          
          
            checkCode
          
          
            ==
          
          
          
          
            null
          
          
            )
             return
          
          
            ;
          
          
            return
          
          
            ;
             Session[
          
          
            "
          
          
            Code
          
          
            "
          
          
            ]
          
          
            =
          
          
            checkCode;
          
          
            //
          
          
            将字符串保存到Session中,以便需要时进行验证
            Session[
          
          
            "
          
          
            Code
          
          
            "
          
          
            ]
          
          
            =
          
          
            checkCode;
          
          
            //
          
          
            将字符串保存到Session中,以便需要时进行验证
          
          
             System.Drawing.Bitmapimage
          
          
            =
          
          
          
          
            new
          
          
            System.Drawing.Bitmap((
          
          
            int
          
          
            )(checkCode.Length
          
          
            *
          
          
          
          
            21.5
          
          
            ),
          
          
            22
          
          
            );
          
          
            System.Drawing.Bitmapimage
          
          
            =
          
          
          
          
            new
          
          
            System.Drawing.Bitmap((
          
          
            int
          
          
            )(checkCode.Length
          
          
            *
          
          
          
          
            21.5
          
          
            ),
          
          
            22
          
          
            );
             Graphicsg
          
          
            =
          
          
            Graphics.FromImage(image);
            Graphicsg
          
          
            =
          
          
            Graphics.FromImage(image);
             try
          
          
            try
          
          
             {
            
          
          
          
            
              {
               //
            
            
              生成随机生成器
            
            
              //
            
            
              生成随机生成器
            
            
               Randomrandom
            
            
              =
            
            
            
            
              new
            
            
              Random();
            
            
              Randomrandom
            
            
              =
            
            
            
            
              new
            
            
              Random();
               
               //
            
            
              清空图片背景色
            
            
              //
            
            
              清空图片背景色
            
            
               g.Clear(Color.White);
            
            
              g.Clear(Color.White);
               
               //
            
            
              画图片的背景噪音线
            
            
              //
            
            
              画图片的背景噪音线
            
            
               int
            
            
              i;
            
            
            
            
              int
            
            
              i;
               for
            
            
              (i
            
            
              =
            
            
            
            
              0
            
            
              ;i
            
            
              <
            
            
            
            
              25
            
            
              ;i
            
            
              ++
            
            
              )
            
            
              for
            
            
              (i
            
            
              =
            
            
            
            
              0
            
            
              ;i
            
            
              <
            
            
            
            
              25
            
            
              ;i
            
            
              ++
            
            
              )
               {
              
            
            
            
              
                {
                 int
              
              
                x1
              
              
                =
              
              
                random.Next(image.Width);
              
              
                int
              
              
                x1
              
              
                =
              
              
                random.Next(image.Width);
                 int
              
              
                x2
              
              
                =
              
              
                random.Next(image.Width);
              
              
                int
              
              
                x2
              
              
                =
              
              
                random.Next(image.Width);
                 int
              
              
                y1
              
              
                =
              
              
                random.Next(image.Height);
              
              
                int
              
              
                y1
              
              
                =
              
              
                random.Next(image.Height);
                 int
              
              
                y2
              
              
                =
              
              
                random.Next(image.Height);
              
              
                int
              
              
                y2
              
              
                =
              
              
                random.Next(image.Height);
                 g.DrawLine(
              
              
                new
              
              
                Pen(Color.Silver),x1,y1,x2,y2);
                g.DrawLine(
              
              
                new
              
              
                Pen(Color.Silver),x1,y1,x2,y2);
                 }
                }
              
            
            
               
               Fontfont
            
            
              =
            
            
            
            
              new
            
            
              System.Drawing.Font(
            
            
              "
            
            
              Arial
            
            
              "
            
            
              ,
            
            
              12
            
            
              ,(System.Drawing.FontStyle.Bold));
              Fontfont
            
            
              =
            
            
            
            
              new
            
            
              System.Drawing.Font(
            
            
              "
            
            
              Arial
            
            
              "
            
            
              ,
            
            
              12
            
            
              ,(System.Drawing.FontStyle.Bold));
               System.Drawing.Drawing2D.LinearGradientBrushbrush
            
            
              =
            
            
            
            
              new
            
            
              System.Drawing.Drawing2D.LinearGradientBrush(
            
            
              new
            
            
              Rectangle(
            
            
              0
            
            
              ,
            
            
              0
            
            
              ,image.Width,image.Height),Color.Blue,Color.DarkRed,
            
            
              1.2F
            
            
              ,
            
            
              true
            
            
              );
              System.Drawing.Drawing2D.LinearGradientBrushbrush
            
            
              =
            
            
            
            
              new
            
            
              System.Drawing.Drawing2D.LinearGradientBrush(
            
            
              new
            
            
              Rectangle(
            
            
              0
            
            
              ,
            
            
              0
            
            
              ,image.Width,image.Height),Color.Blue,Color.DarkRed,
            
            
              1.2F
            
            
              ,
            
            
              true
            
            
              );
               g.DrawString(checkCode,font,brush,
            
            
              2
            
            
              ,
            
            
              2
            
            
              );
              g.DrawString(checkCode,font,brush,
            
            
              2
            
            
              ,
            
            
              2
            
            
              );
               
               //
            
            
              画图片的前景噪音点
            
            
              //
            
            
              画图片的前景噪音点
            
            
               g.DrawRectangle(
            
            
              new
            
            
              Pen(Color.Silver),
            
            
              0
            
            
              ,
            
            
              0
            
            
              ,image.Width
            
            
              -
            
            
            
            
              1
            
            
              ,image.Height
            
            
              -
            
            
            
            
              1
            
            
              );
            
            
              g.DrawRectangle(
            
            
              new
            
            
              Pen(Color.Silver),
            
            
              0
            
            
              ,
            
            
              0
            
            
              ,image.Width
            
            
              -
            
            
            
            
              1
            
            
              ,image.Height
            
            
              -
            
            
            
            
              1
            
            
              );
               System.IO.MemoryStreamms
            
            
              =
            
            
            
            
              new
            
            
              System.IO.MemoryStream();
              System.IO.MemoryStreamms
            
            
              =
            
            
            
            
              new
            
            
              System.IO.MemoryStream();
               image.Save(ms,System.Drawing.Imaging.ImageFormat.Gif);
              image.Save(ms,System.Drawing.Imaging.ImageFormat.Gif);
               Response.ClearContent();
              Response.ClearContent();
               Response.ContentType
            
            
              =
            
            
            
            
              "
            
            
              image/Gif
            
            
              "
            
            
              ;
              Response.ContentType
            
            
              =
            
            
            
            
              "
            
            
              image/Gif
            
            
              "
            
            
              ;
               Response.BinaryWrite(ms.ToArray());
              Response.BinaryWrite(ms.ToArray());
               
               }
              }
            
          
          
             catch
          
          
            catch
          
          
             {
            
          
          
          
            
              {
               g.Dispose();
              g.Dispose();
               image.Dispose();
              image.Dispose();
               }
              }
            
          
          
             
             }
            }
          
        
        
           }
          }
        
      
      
         
      
    
保存直接运行即可!


 
       
         
					 
					