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

我只是遇到了类似的问题,虽然它没有让我返回 Index,但这可能是一个 .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 回答