65.9K
CodeProject 正在变化。 阅读更多。
Home

AJAX 必填项验证器

emptyStarIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

0/5 (0投票)

2013 年 10 月 11 日

CPOL

1分钟阅读

viewsIcon

11918

Ajax 验证器 在本文中,我将向您展示如何借助 AJAX 调用 RequiredFieldValidator。

Ajax 验证器


在本文中,我将向您展示如何借助 AJAX 调用 RequiredFieldValidator。


步骤 1:在这种情况下,.aspx 页面中有三个控件

1. TextBox (txtfname)
2. Label (lblmsg):用于显示错误消息。
3. 还有一个 Button (btnshow
 
 
 
 <asp:TextBox ID="txtfname" runat="server"></asp:TextBox>
 <asp:Label ID="lblmsg" runat="server" Text="请输入您的名字" Style="color: #ff0000; display:none;"></asp:Label>
   <input id="btnshow" type="button" onclick="ShowValdidator()" value="提交" />



注意:  这里我们设置 Label (lblmsg) 的样式:display:none:表示 Label 不显示。


在这里,我们在 btnshow 的 onclick 事件中调用函数 ShowValdidator(),通过它检查 TextBox 的值并调用 Label(错误消息)。




步骤 2:调用函数 (ShowValdidator())

<head> 部分编写以下代码:


<script language="JavaScript" type="text/javascript" >

var xmlHttp

var arr;

function ShowValdidator()

{


xmlHttp=GetXmlHttpObject()

var url="Default.aspx"

url=url+"?fname="+document.getElementById('txtfname').value

xmlHttp.onreadystatechange=stateChanged 

xmlHttp.open("GET",url,true)

xmlHttp.send(null)

return false;

}

function stateChanged() 


if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")


      var str;

      str = xmlHttp.responseText;

      if(str=="")
      {
        document.getElementById("lblmsg").style.display='';

      }
      else
      {
         document.getElementById("lblmsg").style.display='none';
      }
      
}

}      

function GetXmlHttpObject()


var objXMLHttp=null

if (window.XMLHttpRequest)

{

objXMLHttp=new XMLHttpRequest()

}

else if (window.ActiveXObject)

{

objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")

}

return objXMLHttp


 </script>





步骤 3:- 在后台代码 (C#) 中:


protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            if (Request.QueryString["fname"] != null)
            {

                string fname = Request.QueryString["fname"];

                Response.Clear();

                string str = fname.ToString();
                Response.Write(str);

                Response.End();

            }
        }
    }


     





© . All rights reserved.