-1

我正在尝试使用 Ajax 运行一些后台验证,但表单仍会发布到控制器。

表格

<form id="myForm" method="post">
    <input type="hidden" name="username" />
    <input type="hidden" name="password" />
    <input type="submit" value="Submit" />
</form>

剧本

$(document).ready(function () {

    $("#myForm").submit(function (event) {
        event.preventDefault();
        showLoadingWindow(); // Unhides some "Logging in..." div
        $.ajax({
            url: "@actionUrl",
            type: "POST",
            data: $(this).serialize(),
            cache: false,
            done: function () {
                window.location.href(@successUrl);
            },
            fail: function () {
                window.location.href(@errorUrl);
            }
        });
    });

});

我错过了什么?

4

2 回答 2

0

这完全是我之前注释掉.hrefURL 的错,因为问题是我忘记在它们周围加上引号:window.location.href("@errorUrl");即使在我丢失引号时控制台没有抛出错误,也可以修复它.

于 2013-10-02T18:33:39.297 回答
0

您可以尝试更改您的 ajax 调用以使用成功而不是完成。

success: function(result){
    if(result.Success){
        window.location...
    }else{
        window.location...
    }
}
于 2013-10-02T17:14:00.437 回答