1

関数に送信する単純なフォームがあります。問題は、ランダムに失敗してロックアップすることです。firebug を詳しく調べた後、URL が functions/changePassword.php から functions/index.php に変更され続けます

現在の機能

function submitchangePasswordForm() {
    showLoading();
    var formData = new FormData($('#changePasswordForm')[0]);
    $.ajax({
        url : 'functions/changePassword.php',
        type : 'POST',
        data : formData,
        cache : false,
        contentType : false,
        processData : false
    }).done(function (data) {
        if (data == '1') {
            popup_alert('Your password has been updated successfully.', 'Update Successful', 'Ok');
            $("html, body").animate({
                scrollTop : 0
            });
            $('#changePasswordForm').each(function () {
                this.reset();
            });
        } else {
            popup_alert('An error occured preventing us from changing your password. <br> Error: <br>' + data, 'Update Failed', 'Ok');
            $('#old_pass').val('');
            $('#changePasswordForm').submit();
        }
        hideLoading();
    });
}

フィールドが再び空白であることを示すためにjQuery検証を使用しているため、誰かがエラー時に再送信を要求する前に使用されます。

これはバグですか、それともエラーを引き起こすために何か間違ったことをしていますか?

4

2 に答える 2

1

同様の問題が発生しましたが、インデックスには戻りませんでしたが、それは .htaccess 設定である可能性があります。

解決策は、私の URL をurl : '/directory/page.php' 、あなたにも役立つことを願って書くことでした。

于 2013-03-19T17:38:11.073 に答える
0

その方法を教えていただけます<form onsubmit ..か?失敗した場合は呼び出していますが、属性が$('#changePasswordForm').submit()不明です。action

フィールド<form>がない場合は、同じページに送信されます。action='somewhere'おそらくそれだと思います。

于 2013-03-19T16:07:10.500 に答える