zoukankan      html  css  js  c++  java
  • Ajax 注册框架

    Asp.net通过验证控件在客户端实现一些注册信息的验证,在验证范围上具有一定的限制。比如说用户名是否重复,所有的用户信息是保存在服务器数据库中,所以需要访问服务器,单纯的验证控件无法实现。按照普通的动态网页的实现原理,客户端提交信息,服务器端接收信息进行相应的处理,再返回数据给客户端,在注册功能中无法实现无刷新的注册信息实时验证。

          Ajax提供客户端与服务器端的异步信息交换可以实现注册信息实时动态验证。在这里我们采用AjaxPro.Net框架,下面以用户名验证功能来说明:

    1 UserRegister.aspx:

    <asp:TextBox ID="txtUserName" runat="server"  Height="21px" onkeyup="VerifyUsername(this.value)" ></asp:TextBox>
    function VerifyUsername(name)
    {
       UserRegister.GetReturnCode(name, IsUsernameExist_callback);
    }

    UserRegister为注册页面名称,GetReturnCode为后台C#代码

    参数name为当前编辑框中输入的用户名,IsUsernameExist_callback为处理GetReturnCode返回信息的函数。


    function IsUsernameExist_callback(res)
           {
                
    var msg = document.getElementById("<%=lblMsgUserName.ClientID %>");//lblMsgUserName:显示验证信息

                var bRet = res.value;//提取服务器端返回的值
              
                
    switch(bRet)//根据返回的值显示相应的验证信息

                {
                    
    case "Valid"
    :
                        msg.innerHTML 
    = '输入合法'
    ;
                        
    break
    ;
                    
    case "Exist"
    :
                        msg.innerHTML 
    = '用户名已存在,请使用其他登陆用户名!'
    ;
                        
    break
    ;
                    
    case "NoValid"
    :
                        msg.innerHTML 
    = '用户名长度必须在3到15之间!'
    ;
                        
    break
    ;
                    
    case "Empty"
    :
                        msg.innerHTML 
    = '不能为空!'
    ;
                        
    break
    ;
                }   
           }

    2 UserRegister.aspx.cs:


     [AjaxPro.AjaxMethod]//AjaxPro.Net方法声明
        public string GetReturnCode(string strVal)
        {
            
    if (strVal.Equals(string
    .Empty))
            {
                
    return "Empty"
    ;
            }
            
    else if (!IsValidUsername(strVal))//验证用户名输入格式

            {
                
    return "NoValid"

            }
            
    else if (IsUsernameExist(strVal))//验证数据库中是否存在此用户名

            {
                
    return "Exist"
    ;
            }
            
    else

            {
                
    return "Valid";//合法
            }                    
        }
  • 相关阅读:
    UI自动化测试入门一:Python3+Selenium环境搭建
    Linux下限制进程的CPU利用率
    Linux下模拟CPU占用100%
    Java接口自动化——OkHttp框架
    Java接口自动化——Before/After注解、Parameters注解和DataProvider注解
    Java接口自动化——TestNG快速开始
    《重构 改善既有代码的设计》读书笔记-坏代码的味道
    linux-脚本问题汇总
    RocketMq源码学习-消息存储
    linux-文本处理-grep
  • 原文地址:https://www.cnblogs.com/ymyglhb/p/1444385.html
Copyright © 2011-2022 走看看