本文將向大家介紹Asp.net實現無刷新檢測用戶名的方法,功能為:當用戶輸入用戶名,用戶名的文本框失去焦點後就檢測用戶名是否重復,不用再點擊一個按鈕才能檢測(如今很多網站都具備這個功能哦)。
下面就給出實現這一功能的代碼:
前台代碼:
以下是引用片段:
<script type="text/javascript" language="javascript">
var xmlHttp = null;
function CheckUser()
{
try
{
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(err1)
{
try
{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(err2)
{
xmlHttp = new XMLHttpRequest();
}
}
var Text1 = document.getElementById("Text1");
var url = "chkuser.aspx?User=" + Text1.value;
xmlHttp.open("GET",url,true);
xmlHttp.onreadystatechange = OnHandler;
xmlHttp.send(null);
}
function OnHandler()
{
if(xmlHttp.readyState == 4)
{
var isValid = xmlHttp.responseText;
var exists = document.getElementById("exsits");
exists.innerHTML = isValid.substring(0,4);
}
}
</script>
<input id="Text1" type="text" onblur="CheckUser()" /><label d="exsits"></label><br />
然後建一個chkuser.aspx,其後台代碼改為:
以下是引用片段:
protected void Page_Load(object sender, EventArgs e)
{
string user = this.Request.QueryString["User"];
if (UserExist(user))
{
Response.Write("存在");
}
else
{
Response.Write("不存在");
}
}
private bool UserExist(string username)
{
ClassLib.Employee emp = new ClassLib.Employee();
return emp.EmpNameExist(username);
}
OK,代碼就這麼多,主要是體現一下思路。