0

私はこのjqueryコードを持っています

$(document).ready(function(){           

    $('#lform').submit(function(){
        $.post(
        'processor.php',
        $(this).serialize(),
        //here, where we're going to manage the output data from the login.php
        function(output){
            var ss = output;
            if (ss === "correct"){
                alert (ss);
            }else{
                $('body,html').animate({scrollTop: 20}, 800);
                $('#error').html(output);
                });
            }       
                return false;       
    });         

});

上記のコードからわかるように、単純にフォーム データをポストし、processor.phpそこからの応答を処理します。最初に出力を a に格納し、var ss次に出力が「正しい」に等しいかどうかを確認します。そうである場合は「正しい」と警告し、そうでない場合は に応答を出力し#errorます。

上記のコードは機能していますが、応答が正しいと等しい場合は常に何か問題があり、正しいという警告ボックスが表示されず、代わりに応答が #error 要素に入れられました

4

2 に答える 2

1

スコープ ブレースの順序が間違っているため、関数の実行さえも中断されます。

        }else{
            $('body,html').animate({scrollTop: 20}, 800);
            $('#error').html(output);
            });
        }

            return false;

次のようにする必要があります。

        }else{
            $('body,html').animate({scrollTop: 20}, 800);
            $('#error').html(output);
        }
        return false;
    }
于 2013-07-24T23:12:35.390 に答える