第一步:在登陆页的<head>中输入如下代码(也可以单独新建一个js文件链接到登陆页)
<script language="javascript" type="text/javascript">
var xmlHttp = false;
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e2) {
xmlHttp = false;
}
}
if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
xmlHttp = new XMLHttpRequest();
}
function callServer() {
var u_name = document.getElementById("txtUserName").value;
if ((u_name == null) || (u_name == "")) return;
var url = "CheckUser.aspx?name=" + escape(u_name);
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = updatePage;
xmlHttp.send(null);
}
function updatePage() {
if (xmlHttp.readyState < 4) {
labelCheckMessage.innerHTML="loading...";
}
if (xmlHttp.readyState == 4) {
var response = xmlHttp.responseText;
labelCheckMessage.innerHTML=response;
}
// if (test1.innerHTML=="已被注册"){
// document.form1.submit.disabled=true}else{
// document.form1.submit.disabled=false
// }
}
</script>
第二步:登陆页的前台代码如下:
<form id="frmlogin" runat="server">
<div id="divLogin">
<span id="labelUserName" class="fontLabel">用户名:</span><span id="labelPassword" class="fontLabel">密码:</span>
<span id="labelCheckMessage" class="fontMessage"></span>
<asp:TextBox ID="txtUsername" runat="server" CssClass="textboxUsername"></asp:TextBox>
<asp:TextBox ID="txtPassword" runat="server" CssClass="textboxPassword" TextMode="Password"></asp:TextBox>
</div>
</form>
第三步:登陆页后台代码如下:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Me.txtUsername.Attributes("onblur") = "javascript:callServer();"
End Sub
第四步:另外新建一个aspx页面CheckUser.aspx,在其前台代码中只保留如下一行(特别要注意,否则例子不会成功)
<%@ Page Language="VB" AutoEventWireup="true" CodeFile="CheckUser.aspx.vb" Inherits="CheckUser" %>
第五步:在CheckUser.aspx的后台代码中输入
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim strName As String = Request.QueryString("name").ToString()
Dim strSql As String = "select sid from t1 where uname='" + strName + "'"
Dim strConnection As String = "Data Source=(local);Initial Catalog=test;Persist Security Info=True;User ID=sa;Password=test;"
Dim cmdUser As New SqlCommand(strSql, New SqlConnection(strConnection))
Dim drUser As SqlDataReader
cmdUser.Connection.Open()
drUser = cmdUser.ExecuteReader
If drUser.Read() Then
'当输入的用户名已注册时不返回任何信息
Response.Write("")
Else
'当输入的用户名未注册时返回未注册信息
Response.Write("UserName don't exists")
End If
drUser.Close()
End Sub
全部结束,可以运行登陆页面测试了