表单提交成功后重定向

时间:2014-01-28 21:23:53

标签: javascript

我一直遇到这个问题,看了很多过去对这个问题的答案。

基本上我想在成功提交他们正在完成的表单之后将用户重定向到另一个页面,最好是在看到成功消息之后。

这里我认为我必须添加重定向,但我尝试过的所有内容都会破坏提交,没有任何内容会影响我的数据库,或者没有任何反应。

if (jQueryRoi('#formRoiWebCapture').valid()) {
   SaveCaptureForm(ui);
} else {
    document.getElementById('buttonSaveFormROI').disabled=false;
    }

非常感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

要重定向到另一个页面(来自here):

// similar behavior as an HTTP redirect
window.location.replace("http://stackoverflow.com");

// similar behavior as clicking on a link
window.location.href = "http://stackoverflow.com";

当您说没有任何内容命中您的数据库是因为您可能在完成提交事件之前重定向页面。使用ajax执行提交,然后重定向。

由于你使用的是jQuery,你可以使用这样的东西(取自here):

$.post('server.php', $('#theform').serialize())

$.get('server.php?' + $('#theForm').serialize())

答案 1 :(得分:0)

这实际上取决于你的服务器端代码的作用,但你可以做这样的事情(不是最好的实现,但是起点):

if (jQueryRoi('#formRoiWebCapture').valid()) {
    SaveCaptureForm(ui);
    showMessage();
    setTimeout(function() {
        location.href = "otherpage.html"
    },5000) // redirect after 5000ms
} else {
    document.getElementById('buttonSaveFormROI').disabled=false;
}