• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Ajax实现异步刷新验证用户名是否已存在的具体方法

    都是简单的实例,所以直接发代码

    静态页面Ajax.html

    复制代码 代码如下:

    html>
        head>
            title>Ajax/title>
            script type="text/javascript">
                function loadXMLDoc() {
                    if (document.getElementById("account").value == "") {
                        document.getElementById("accDiv").innerHTML = "用户名不能为空";
                        return;
                    }
                    var xmlHttp;
                    if(window.XMLHttpRequest) { // code for IE7+
                        xmlHttp = new XMLHttpRequest();
                    }
                    else { // code for IE5/IE6
                        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
                    }

                    xmlHttp.onreadystatechange = function () {
                        if (xmlHttp.readyState == 4 xmlHttp.status == 200) {
                            //document.getElementById("myDiv").innerHTML=xmlHttp.responseText;
                            if (xmlHttp.responseText == "true") {
                                document.getElementById("accDiv").innerHTML = "用户名不可用";
                            }
                            else {
                                document.getElementById("accDiv").innerHTML = "用户名可用";
                            }
                        }
                    }
                    var a = document.getElementById("account").value;
                    // get
                    xmlHttp.open("GET", "validate.aspx?account=" + a + "random=" + Math.random, true);
                    xmlHttp.send();
                }
                function delData() {
                    document.getElementById("account").value = "";
                    document.getElementById("accDiv").innerHTML = "";
                }
            /script>
        /head>
        body>
            h3>ajax/h3>
            table>
                tr>
                    td>账号:/td>td>input id="account" type="text" onblur="loadXMLDoc();" onfocus="delData();"/>/td>td>div id="accDiv">/div>/td>
                /tr>
                tr>
                    td>密码:/td>td>input id="passwd" type="password" />/td>
                /tr>
                tr>
                    td>确认密码:/td>td>input id="vPasswd" type="password" />/td>
                /tr>
                tr>
                    td>姓名:/td>td>input id="name" type="text" />/td>
                /tr>
            /table>

        /body>
    /html>


    在账号输入框失去焦点时调用函数

    访问服务器使用的是Get方法,所以在参数处使用了附加随机码来避免缓存。

    验证页面validate.aspx后台代码:

    复制代码 代码如下:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Configuration;
    using System.Data.Sql;
    using System.Data.SqlClient;

    public partial class Ajax_validate_validate : System.Web.UI.Page
    {
        public SqlConnection conn;

        protected void Page_Load(object sender, EventArgs e)
        {
            Response.Clear();
            if (Exists(Request.QueryString["account"]))
                Response.Write("true");
            else
                Response.Write("false");
            Response.End();
        }
        /// summary>
        /// 获取数据库连接
        /// /summary>
        /// returns>/returns>
        protected SqlConnection GetConnection()
        {
            string str = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
            conn = new SqlConnection(str);
            return conn;
        }
        protected bool Exists(string account)
        {
            using (GetConnection())
            {
                try
                {
                    conn.Open();
                    string sqlStr = "select count(*) from userinfo where account='" + account + "'";
                    SqlCommand cmd = new SqlCommand(sqlStr, conn);
                    int row = Convert.ToInt32(cmd.ExecuteScalar());
                    if (row > 0)
                        return true;
                    else
                        return false;
                }
                catch (Exception e)
                {
                    throw e;
                }
                finally
                {
                    conn.Close();
                }
            }
        }
    }

    在后台中验证用户名是否已经存在于数据库中,返回真或者假

    运行结果:

    数据库很简单,只建了一张表userinfo,有3个字段:account、passwd、name

    注意:在后台往请求页面写数据时,当写完要发送的数据之后,需要调用Response.end()方法来终止写入,否则可能会发送一个完整页面过去。

    您可能感兴趣的文章:
    • jquery ajax 检测用户注册时用户名是否存在
    • Ajax实时验证用户名/邮箱等是否已经存在的代码打包
    • PHP+Ajax异步通讯实现用户名邮箱验证是否已注册( 2种方法实现)
    • 基于jQuery实现的Ajax 验证用户名是否存在的实现代码
    • jsp+ajax实现无刷新(鼠标离开文本框即验证用户名)实现思路
    • PHP+AJAX实现无刷新注册(带用户名实时检测)
    • ajax 检测用户名是否被占用
    • Asp.net下利用Jquery Ajax实现用户注册检测(验证用户名是否存)
    • PHP+Ajax检测用户名或邮件注册时是否已经存在实例教程
    • Ajax异步检查用户名是否存在
    上一篇:ASP.NET―001:GridView绑定List、页面返回值具体实现
    下一篇:ASP.NET汉字转拼音 - 输入汉字获取其拼音的具体实现
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Ajax实现异步刷新验证用户名是否已存在的具体方法 Ajax,实现,异步,刷新,验证,