ASP.NET AJAX无刷新验证用户名

来源:岁月联盟 编辑:exp 时间:2008-08-16
极其简单,自行扩展

HTML代码

<%@ Page Language=”C#” AutoEventWireup=”true” CodeFile=”Default.aspx.cs” Inherits=”_Default” %>

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.1//EN” “http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd“>
<html xmlns=”http://www.w3.org/1999/xhtml“>
<head runat=”server”>
<title>Untitled Page</title>
<script type=”text/javascript”>
function GetUser()
{
requestSimpleService = WebServiceSample.GetUser(document.getElementById(’UserName’).value, OnRequestComplete);
return false;
}
//显示提示信息
function OnRequestComplete(result)
{
if(result == ‘true’)
{
document.getElementById(’Message’).innerHTML = ‘提示:用户名已被注册.’;
document.getElementById(’PostButton’).disabled = ‘disabled’;
}
else
{
document.getElementById(’Message’).innerHTML = ‘提示:用户名可以使用.’;
document.getElementById(’PostButton’).disabled = ”;
}
}
</script>
</head>
<body>
<form id=”form1″ runat=”server”>
<asp:ScriptManager ID=”ScriptManager1″ runat=”server”>
<Services>
<asp:ServiceReference Path=”WebServiceSample.asmx” />
</Services>
</asp:ScriptManager>
<input id=”UserName” type=”text” onblur=”return GetUser()” />
<input id=”PostButton” type=”button” value=”注 册” disabled=”disabled” /><br />
<div id=”Message”></div>
</form>
</body>
</html>

WebService代码

using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Web.Script.Services;

/// <summary>
/// WebServiceSample 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ScriptService]

public class WebServiceSample : System.Web.Services.WebService
{

public WebServiceSample () {

//如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}

[WebMethod]
public string GetUser(string strUser)
{
string strMessage = null;
if (strUser == “ADMIN”)
{
strMessage = “true”;
}
else
{
strMessage = “false”;
}
return strMessage;
}
}