在onblur事件里,用ajax方式查询数据库中该用户名是否存在就可以了。ajax调用,可以用jquery类库,这个跨浏览器兼容。
HTML页如下:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
window.attachEvent("onload", function () {
document.getElementById("txt").attachEvent("onblur", function () {
var name = document.getElementById("txt").value;
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("Get", "Default.aspx?username=" + name + "&time=" + new Date().getTime(), false);
xmlHttp.onreadystatechange = function () {
if (xmlHttp.readyState == 4) {
//如果存在,则返回false
var result = xmlHttp.responseText.toLowerCase();
if (result=="false") {
alert("存在该用户名!");
}
}
}
xmlHttp.send(null);
});
});
</script>
</head>
<body>
<input type="text" id="txt" />
</body>
</html>
请求页后台代码如下:
protected void Page_Load(object sender, EventArgs e)
{
string username = Request["username"];
//如果用户名为zhangsan,则返回false
Response.Write((!username.Equals("zhangsan")).ToString());
Response.Flush();
Response.End();
}