zoukankan      html  css  js  c++  java
  • ajax学习笔记简单事例1完成验证

    这个例子很简单,有一个输入框,onchange()事件触发验证.
    html:

    <HTML>
        
    <HEAD>
            
    <title>default</title>
            
    <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
            
    <meta name="CODE_LANGUAGE" Content="C#">
            
    <meta name="vs_defaultClientScript" content="JavaScript">
            
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
            
        
    </HEAD>
        
    <body MS_POSITIONING="GridLayout">
            
    <form id="Form1" method="post" runat="server">
                birthDate
                
                
    <input type=text id="birthDate" onchange="validate();"/>
            
                
    <div id="dateMessage"></div>
            
    </form>
            
    <script language="javascript">
    var xmlHttp;

     
    function validate()
     {
     
      
       
    if(window.ActiveXObject)
       {
          xmlHttp
    =new ActiveXObject("Microsoft.XMLHTTP");
       }
       
    else if(window.XMLHttpRequest)
       {
         xmlHttp
    =new XMLHttpRequest();
       }
     
      
    var date=document.getElementById("birthDate");
      
    var url="validation.aspx?birthDate=" + escape(date.value);
      xmlHttp.open(
    "GET",url,true);
      xmlHttp.onreadystatechange
    =callback;
      xmlHttp.send(
    null);
     }
     
    function callback()
     {
      
    if(xmlHttp.readyState == 4)
      {
       
    if(xmlHttp.status == 200)
       {
         
    var mes=xmlHttp.responseXML.getElementsByTagName("message")[0].firstChild.data;
          
    var val=xmlHttp.responseXML.getElementsByTagName("passed")[0].firstChild.data;
         setMessage(mes,val);
       }
      }
     }
     
    function setMessage(message,isValid)
     {
       
       
    var messageArea=document.getElementById("dateMessage");
       
    var fontColor="red";
       
    if(isValid=="true")
       {
         fontColor
    ="green";
         
       }
       messageArea.innerHTML
    ="<font color="+fontColor+" >"+message+"</font>";
     }
            
    </script>
        
    </body>
    </HTML>

     validation.cs:

    private void Page_Load(object sender, System.EventArgs e)
            {
                
    bool passed=validateDate(Request.QueryString["birthDate"].ToString());

                
    //this.Response.ContentType = "application/xml"; //
                this.Response.ContentType = "text/xml";
                
    //Response.Charset = "GB2312";
                this.Response.AppendHeader("Cache-Control","no-cache");
                
    string message="You have entered an invalid date";
                
    if(passed)
                {
                    message
    ="You have entered a valid date.";
                }

                
    this.Response.Write("<response>");
                
    this.Response.Write("<passed>"+passed.ToString().ToLower()+"</passed>");
                
    this.Response.Write("<message>"+message+"</message>");
                
    this.Response.Write("</response>");
              
    this.Response.End();

            }
            
    private bool validateDate(string date)
            {
                
                    
    try
                    {
                       Convert.ToDateTime(date);
                        
    return true;
                    }
                    
    catch
                    {
                        
    return false;
                    }
                
                
            }
  • 相关阅读:
    Angular $http解析通过接口获得的json数据
    Python基础(十四)—装饰器 wrapper
    Python基础(十二)—面向对象拾遗(__slots__、@property、枚举类、元类)
    Python基础(十三)—切片、yield、生成器、序列化JSON
    Python基础(十一)—魔法方法(构造析构、属性魔法、算数魔法、类型魔法等)
    Python基础(十)—面向对象的深入讲解(继承、Mixin编程机制等)
    Python基础(九)—异常except、else&with、异常的名称层次
    Python基础(八)—编码详解(ASCII、GBK、Unicode、UTF-8等)、decode&encode
    Python基础(七)—输入输出(open、os、pickle)
    Python基础(六)—函数式编程(内部函数、闭包、lambda、filter/map/reduce/sorce、偏函数)
  • 原文地址:https://www.cnblogs.com/jasonduan/p/579154.html
Copyright © 2011-2022 走看看