Asp.Net+Ajax 用户名检测

本文介绍了一种基于ASP.NET的用户名实时校验机制,通过前台JavaScript实现用户输入时的即时反馈,后台则采用C#进行数据库查询以判断用户名是否已被占用。此方案能够提升用户体验并确保系统的数据唯一性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前台

 

<html xmlns="http://www.w3.org/1999/xhtml" >

<head runat="server">

    <title>无标题页</title>

    <script language="javascript" type="text/javascript">

function CheckUserName()

{

var sUserName=document.getElementById("<%= tb_UserName.ClientID%>");

var sCheckInfo=document.getElementById("CheckInfo");

sCheckInfo.innerText="查询中……";

var objxml = new ActiveXObject("Microsoft.XMLHTTP");

objxml.open("GET","checkusername.aspx?username=" + sUserName.value,false);

objxml.send();

var sResult=objxml.responseText;

if(objxml.status=="200")

{

switch(sResult)

{

case "1":

sCheckInfo.innerHTML="<font color=red>恭喜</font>," + sUserName.value + "可以使用";

break;

case "0":

sCheckInfo.innerHTML="<font color=red>抱歉</font>,用户名" + sUserName.value + "已经被使用";

break;

}

}

else

{

sCheckInfo.innerHTML="<font color=red>抱歉</font>,查询失败";

}

}

</script>

</head>

<body>

    <form id="form1" runat="server">

    <div>

    <asp:TextBox ID="tb_UserName" runat="server" TextMode="SingleLine" Width="180px" onBlur="CheckUserName()"></asp:TextBox><span id="CheckInfo"></span>

        <br />

        <asp:TextBox ID="TextBox1" runat="server" Width="179px"></asp:TextBox></div>

    </form>

</body>

</html>

后台 check.aspx

 

public partial class checkusername : System.Web.UI.Page

{

    protected void Page_Load(object sender, EventArgs e)

    {

        string sUserName = Request.QueryString["username"].Trim().ToString();

        DataSet ds=new DataSet();

        ds = Maticsoft.DBUtility.DbHelperSQL.Query("SELECT count(*) from TB_USER where User_Name='"+sUserName+"'");

        int userCount = int.Parse(ds.Tables[0].Rows[0][0].ToString());

        Response.Clear();

        if (userCount == 0)

        {

            Response.Write("1");

        }

        else

        {

            Response.Write("0");

        }

        Response.End();

    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值