【问题标题】:What's the best practice for make username check like Twitter?像 Twitter 一样进行用户名检查的最佳做法是什么?
【发布时间】:2011-02-18 01:00:08
【问题描述】:

我开发了注册表单,它有用户名字段,它需要像 twitter 用户名检查(实时检查)。我已经开发了每个文本框键我使用 jquery 将 textbox.Text 传递到返回的页面用户名是否存在
在文本框的 onkeyup 上调用了以下 JavaScript 方法“Check()”:

function Check() {

        var userName = $('#<%= TextBox1.ClientID %>').val();
        if (userName.length < 3) {
            $('#checkUserNameDIV').html("user name must be between 3 and 20");
            return;
        }
        $('#checkUserNameDIV').html('<img src="loader.gif" />');
        //setTimeout("CheckExistance('" + userName + "')", 5000);
        CheckExistance(userName);

    }
    function CheckExistance(userName) {
        $.get(
            "JQueryPage.aspx", { name: userName },
             function(result) {
                 var msg = "";
                 if (result == "1")
                     msg = "Not Exist " + '<img src="unOK.gif" />';
                 else if (result == "0")
                     msg = "Exist" ;
                 else if (result == "error")
                     msg = "Error , try again";

                 $('#checkUserNameDIV').html(msg);
             }
        );
    }

但我不知道这是否是最好的方法?特别是我会检查每个键位..

是否有任何设计模式可以解决这个问题> 或者没有这样做的好习惯?

【问题讨论】:

  • 如果您的应用程序可以处理每个 onKeyUp... 当然,为什么不呢。但是最好设置一个小的 timeOut(并且一个新的按键会用一个新的计时器替换计时器),或者放置一个按钮“检查用户名”和/或检查用户何时离开表单输入字段(onBlur),假设它不是最后一个字段。
  • 我想在用户编写用户名(如 twitter 用户名)期间实时生成它。我已经在 key up 中完成了它,但是通过每个 key up 请求 db 来进行检查是否有很好的性能?你看到什么场景使用时间?

标签: asp.net jquery twitter


【解决方案1】:

【讨论】:

  • 对不起,但我不知道你的回答对我的问题有何影响。你能解释一下吗?我的问题:我检查每个键是最好的解决方案还是有其他的?
猜你喜欢
  • 2011-07-14
  • 2018-04-08
  • 2012-03-22
  • 2013-05-08
  • 1970-01-01
  • 1970-01-01
  • 2020-10-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多