0

我有一个网络表单让用户输入一些信息并提交。我想要这样的行为,如果提交成功,它将转到一个页面。但是,如果有一些表单提交错误(在我的情况下是由于现有 ID),我希望表单保留在那里而不转到下一页并提醒用户“ID 已经存在”。我使用 jQuery 来处理成功和失败事件:

function checkForm() {

$.post("/myapp/rest/customer/created", $("form").serialize(), function(
    data, status) { })
.done(function() {alert("post success");})
.fail(function() {alert("post error");});
return false;
}

我的表格是:

<form action="/myapp/rest/customer/created"
    onsubmit="return checkForm();" method="POST">
    <table border="1">
        <tr>
            <td>Customer name:</td>
            <td><input type="text" id="name" name="name"></td>
        </tr>
        <tr>
            <td>Customer ID:</td>
            <td><input type="text" id="id" name="id"></td>
        </tr>
        <tr>
            <td>Customer DOB:</td>
            <td><input type="text" id="dob" name="dob"></td>
        </tr>
    </table>
    <br /> <input type="submit" value="Submit">
</form>

提交后,无论提交成功还是失败,我只看到弹出消息框说“发布成功”或“发布错误”。但是如果成功了就永远不会进入下一页。我什至尝试了一种不同的方法,例如下面的代码,但它也不起作用:

function checkForm() {
    $.post("/myapp/rest/customer/created", function(data, status) {
      if (status === "success") {
        alert("post success");
      } else {
        alert("post error");
      }
    });

    return false;
}

/myapp/rest/customer/created那么如果提交成功,如何纠正它使其重定向到下一页( )?

4

1 回答 1

1

您可以使用以下方法在成功条件内重定向window.location.href

if (status === "success") {
  window.location.href = 'http://url.com'
}
于 2013-06-18T15:06:58.683 回答