需要客户端验证是否已经存在。不知道这怎么弄。希望大家给我解决下。先谢谢你们!

解决方案 »

  1.   

    用户名存在于数据库中  要和数据库交互使用Ajax技术。
    失去焦点,Ajax获得数据对比
      

  2.   

    客户端使用ajax验证用户名是否存在
      

  3.   

    用户名:<TextBOX>
    密码:<TextBox>判断输入的这两个列中的值在数据库中是否存在,基础的基础啊
      

  4.   

    使用AJAX>异步调用方法>返回值>判断
      

  5.   

    好像可能大概记得asp.net是有个验证控件的啊!!!
      

  6.   

    只有客户端肯定是不行的,你可以用textbox的textchange事件来完成
      

  7.   


    我知道是结合AJAX才能实现交互,但不会写啊,希望能给我能用的例子或代码!!!!
      

  8.   

    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>这个是ajax页面</title>
        <script language="javascript" type="text/javascript">
            <!--
                //定义用于存储XMLHttpRequest对象的变量
                var xmlHttp = null;
               
                //创建XMLHttpRequest对象
                function creatXMLHTTP()
                {
                    //判断浏览器是否支持ActiveX控件
                    if(window.ActiveXObject)
                    {
                        //将所有可能出现的ActiveXObject版本都放在一个数组中
                        var arrXmlHttpTypes = ['Microsoft.XMLHTTP','MSXML2.XMLHTTP.6.0',,'MSXML2.XMLHTTP.5.0','MSXML2.XMLHTTP.4.0','MSXML2.XMLHTTP.3.0','MSXML2.XMLHTTP'];
                        //通过循环创建XMLHttpRequest对象
                        for(var i=0;i<arrXmlHttpTypes.length;i++)
                        {
                            try
                            {
                                //创建XMLHttpRequest对象
                                xmlHttp = new ActiveXObject(arrXmlHttpTypes[i]);
                                //如果创建XMLHttpRequest对象成功,则跳出循环
                                break;
                            }
                            catch(ex)
                            {
                            }
                        }
                    }
                    //判断浏览器是否将XMLHttpRequest作为本地对象实现
                    else if(window.XMLHttpRequest)
                    {
                        xmlHttp = new XMLHttpRequest();
                    }
                }
                //响应XMLHttpRequest对象状态变化的函数
                function httpStateChange()
                { 
                    if (xmlHttp.readyState==4)
                    {
                        if (xmlHttp.status==200 || xmlHttp.status==0)
                        {
                            //获得服务器返回的数据
                            //定义一个变量,用于判断用户名是否已经存在
                            var bFlag = "false";
                            bFlag=xmlHttp.responseText;   
                                       
                             //查找节点
                            var node = document.getElementById("myDiv");
                            //更新数据
                            if (bFlag=="true")
                            {   alert(bFlag);
                                node.firstChild.nodeValue = "用户名已经存在";
                                myForm.submitButton.disabled = true;
                            }
                            else
                            {
                                node.firstChild.nodeValue = "用户名不存在,可以使用";
                                myForm.submitButton.disabled = false;
                            }
                        }
                    }
                }
               
                //校验用户名是否有效
                function checkName()
                {
                    //创建XMLHttpRequest对象
                    creatXMLHTTP();
                    if (xmlHttp!=null)
                    {
                        //创建响应XMLHttpRequest对象状态变化的函数
                        xmlHttp.onreadystatechange = httpStateChange;
                        var uname=myForm.myName.value
                        //创建HTTP请求
                        xmlHttp.open("get","Handler.ashx?id="+uname,true);
                        //发送HTTP请求
                        xmlHttp.send(null);
                    }
                    else
                    {
                        alert("您的浏览器不支持XMLHTTP,请更换浏览器后再进行注册。");
                    }
                }
            -->
            </script>
    </head>
    <body>
        <p align="center"><b>用户注册</b></p>
            <form name="myForm">
                用户名:<input type="text" name="myName" onblur="checkName()">
                <span id="myDiv">&nbsp;</span><br>
                输入登录密码:<input type="password" name="password1"><br>
                再次输入密码:<input type="password" name="password2"><br>
                密码查询问题:<input type="text" name="problem"><br>
                密码查询答案:<input type="text" name="key"><br>
                <input type="button" value="提交" name="submitButton" disabled>
            </form>
    </body>
    </html>//后台处理页面Handler.ashx
    <%@ WebHandler Language="C#" Class="Handler" %>
    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    public class Handler : IHttpHandler {
       
        public void ProcessRequest (HttpContext context) {
            //context.Response.ContentType = "text/plain";
            //context.Response.Write("Hello World");
            string  flag = "false";
           //获取js传递过来的id值
            string username = System.Web.HttpContext.Current.Request.QueryString["id"];
           //建立数据库访问类
            SQLHelper.SQLHelper sqlhelper = new SQLHelper.SQLHelper();
           //构建sql语句
            string sqlstr = "select count(*) from Tbl_User_GS where fld_uid='"+username+"'";
            //获取datatable
            DataTable dt = sqlhelper.GetDataTable(sqlstr);
            //获取sql返回值
            int a = Convert.ToInt32(dt.Rows[0][0]);
            if (a > 0)
            {
                flag = "true";
            }
            else
            {
                flag ="false";
            }
            context.Response.Write(flag);
        }
     
        public bool IsReusable {
            get {
                return false;
            }
        }}
      

  9.   

    LZ,网站常用的验证有2种1: Ajax  通过输入的用户名 异步查找 给予显示。
    2:把所有的用户名先查找出来,放在一个string 字符串里,挨个查找。
    建议LZ使用AJAX。祝你好运。
      

  10.   

    利用Ajax 查询数据库中是否已存在
      

  11.   

    Ajax不会用0.0
    这个是写在提交事件里的SqlConnection con1 = new SqlConnection(con);
                con1.Open();
                SqlCommand cmd1 = new SqlCommand("select count( * ) from Users where User_Name='" + name + "'", con1);
                int k = int.Parse(cmd1.ExecuteScalar().ToString());
                if (k > 0)
                {
                    Label1.Visible = true;
                    Label1.Text = "对不起,该用户已存在!";
                    TextBox1.Text = "";
                }
    ..............
    还有可以失去焦点就判断写在TextChanged事件里,还要把AutoPostBack设置为true
    不过这个方法有个缺点,失去焦点判断时会刷新页面,太恶心...
    SqlConnection con1 = new SqlConnection(con);
            con1.Open();
            SqlCommand cmd = new SqlCommand("select count(*) from Tab where name='" + TextBox1.Text.Trim() + "'", con1);
            int j = int.Parse(cmd.ExecuteScalar().ToString());
            if (j > 0)
            {
                Label1.Visible = true;
                Label1.Text = "该用户已存在!";
                Label1.ForeColor = System.Drawing.Color.Red;
                TextBox1.Text = "";
            }
      

  12.   

    http://download.csdn.net/source/554726  这里有个DEMO。
      

  13.   

    主要还是去查询数据库,要用后体验好点就使用Ajax技术