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

网络整理 - 07-26

极其简单,自行扩展

HTML代码

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

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.1//EN” ““>
<html xmlns=”“>
<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 = "")]
[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;
    }
}