假设我的代码是:

$("form").submit(function (e) {
    e.preventDefault();
    var logemail = $('input[name="logemail"]').val();
    var logpasswort = $('#logpasswort').val();

    if(logpasswort.length < 6)
    {
        alert('wrong pass');
        return false;
    }
});


一切正常,但我的代码是:

$("form").submit(function (e) {
    e.preventDefault();
    var logemail = $('input[name="logemail"]').val();
    var logpasswort = $('#logpasswort').val();

    if(logpasswort.length < 6)
    {
        alert('wrong pass');
        return false;
    }

    $.ajax({
        type: 'post',
        url: 'connect.php',
        dataType, 'json',
        data: {mach: "login", email: logemail, passwort: logpasswort},
        success: function(data) {
            if(data["status"] == 'wrongpass'){
            {
                alert('wrong pass');
            }

            if(data["status"] == 'ok')
            {
                alert('good');
            }
        }
    });
});


表单只是因为包含AJAX而被提交,即使if(logpasswort.length < 6)为true!那怎么了?

最佳答案

您的JavaScript没有被解析。删除行尾的多余“ {”:

if(data["status"] == 'wrongpass'){


旁注:始终保持一致的风格,在整个代码中将“ {”放在行的或新行中。

09-25 18:34