登陆页面有问题

时间:2014-07-11 17:01:56

标签: javascript php jquery

我正在尝试使用php& s构建登录页面js验证 - 我创建了html / php&等等,但.JS脚本总是挂在最后的"否则" ...并给出" 123"警告...我已经调试了几百个时间的语法问题,我知道任何在线调试网站 - 但它似乎是别的......

$(document).ready(function(){

    $('form.landing-form').submit(function(){

        var name = $.trim($('input[type="text"].field-name').val());
        var email = $.trim($('input[type="text"].field-email').val());
        var phone = $.trim($('input[type="text"].field-phone').val());

        var nameReg = /^[a-zA-Z ]+$/;
        var emailReg = /^([\w-\.]+@([[\w-]+\.)+[\w-]{2,4})?$/;
        var phoneReg = /^[0-9-+]+$/;

        $('input[type="text"]').removeClass('error');

        if(name.length < 2 || !nameReg.test(name)) {
            $('input[type="text"].field-name').addClass('error');
            $('input[type="text"].field-name').val('');
            $('input[type="text"].field-name').attr('placeholder','*valid name is requierd!');
        } else if (email.length < 5 || !emailReg.test(email)) {
            $('input[type="text"].field-email').addClass('error');
            $('input[type="text"].field-email').val('');
            $('input[type="text"].field-email').attr('placeholder','*email is requierd!');
        } else if (phone.length < 9 || !phoneReg.test(phone)) {
            $('input[type="text"].field-phone').addClass('error');
            $('input[type="text"].field-phone').val('');
            $('input[type="text"].field-phone').attr('placeholder','*phone is requierd!');
        } else {
            $.ajax({
                url: "handler/form_handler.php",
                type : "POST",
                dataType: "html",  
                async: "false",  
                data : { name:name, email:email, phone:phone },
                beforeSend : function () {
                    var messege = '<img src="images/ajax-loader.gif" border="0">';
                    messege += '&nbsp;&nbsp;Sending...';
                    $('form.landing-form label').html(messege);
                },
                success: function(response) {
                    if(response == true){
                        alert('321');
                    } else {
                        alert('123');
                    }
                }
            });
        }
        return false;
    });
});

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我认为你以错误的方式使用成功。

jquery manual州:

Function( PlainObject data, String textStatus, jqXHR jqXHR )

换句话说,没有返回布尔值,但是成功消息。

尝试以下操作并查看返回的内容:

success: function(response) {
        alert(response);  /* y no console.log()? */
},
error: function(e) {
        alert(e);
}

根据回复,您可以确定实际发送的内容以及返回的错误(如果有)。如果您不使用它们,像firebug这样的开发人员工具会有所帮助。

此外,您可能希望在与javascript进行比较时使用===代替==。 (见:this SO-post

相关问题