jQuery $ .ajax函数随机无法index.php

时间:2013-03-19 15:38:45

标签: jquery ajax

我有一个提交给函数的简单表单。问题是随机的失败并锁定。仔细观察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验证来显示该字段再次为空。

这是一个错误还是我做错了导致错误?

2 个答案:

答案 0 :(得分:1)

我遇到了类似的问题,虽然它没有让我回到Index,但这可能是.htaccess设置。

解决方法是将我的网址写为url : '/directory/page.php' 希望它也适合你。

答案 1 :(得分:0)

你能展示<form onsubmit ..方法吗?当它失败时,您正在调用$('#changePasswordForm').submit(),但不清楚action属性是什么。

如果您的<form>没有action='somewhere'字段,则会将其提交到同一页面。我猜这可能是它。