Javascript自动检查登录可用性

时间:2016-10-09 10:08:03

标签: javascript php jquery html ajax

我有一个很大的问题,我现在已经尝试解决了几个小时。

我需要在我网站的注册表单中设置自动检查登录可用性选项。我希望它在用户离开输入字段(模糊)后检查输入值。 这是我的HTML的重要部分:

<div id="wrapper">
    <div id="register_area">
        <p id="register_description">Registration form.</p>

        <form action="security/check_register.php" method="post">

        <div id="register_form">
            <input type="text" name="login" placeholder="Login" id="input_login"/>
            <input type="password" name="password" placeholder="Password" id="input_password"/> <br />
            <input type="password" name="password2" placeholder="Re-type password"/> <br />
            <input type="text" name="mail" placeholder="E-mail"/> <br />
            <input type="text" name="birth_year" placeholder="Birth year (YYYY)"/> <br />
            <input type="submit" value="Register"/>
            <p></p>
        </div>
        </form>
    </div>
</div>

这是我的剧本:

$("#input_login").blur(function() {
    jQuery.ajax({
        url: "security/find_login.php",
        data:'login='+$("#input_login").val(),
        type: "POST",
        success:function(data){
            if (data) {
                $("#input_login").value = "";
                $("#input_login").style = "border: 2px solid red;"
            }
        },
        error:function (){}
    });
});

我的security / find_login.php脚本只是检查用户名是否已存在于数据库中,如果是,则返回1,否则返回0.(此部分工作正常)

所以,问题是......在ajax调用之后,我的find_login.php脚本返回正确的值,但我的输入字段(id =“input_login)不会改变它的边界和值。事实上,如果我尝试改变任何事情,没有任何反应。我认为在ajax调用之后我的jQuery脚本无法在我的网站上看到任何元素。 我究竟做错了什么?

我发现了类似的问题:jQuery doesn't work after content is loaded via AJAX 但我不知道如何将这个想法应用到我的脚本中。我几乎尝试了一切。 请告诉我该怎么办。告诉我如何更改我的脚本以便它可以工作。

提前致谢!

2 个答案:

答案 0 :(得分:1)

您在jquery对象上使用了本机属性编辑。您需要在此对象上使用jquery函数:

$("#input_login").val("").css("border", "2px solid red");

答案 1 :(得分:0)

我认为问题出在本声明中。

 $("#input_login").value = "";

此声明应更改为

 $("#input_login").val() = "";