在表单提交时停止刷新/重定向

Stopping a refresh/redirect on form submission

本文关键字:刷新 重定向 表单提交      更新时间:2023-09-26

我有一个应用程序,想在提交后重定向,我想在点击提交后冻结它。该应用程序是一个多窗体,有一个结束幻灯片,我希望动画触发,然后从重定向/刷新冻结它。

<form id="form" class="msform hs-form stacked hs-custom-form" accept-charset="UTF-8" 
action="confidential-url" enctype="multipart/form-data" method="POST" novalidate="">
<!-- form stuff -->
</form>
$(".submit").click(function () {
        return true;
        e.preventDefault();
    });

我已经尝试将onSubmit="return false"添加到我的<form>标签以及各种e.preventDefault();方法。它们都将:

•导致它阻止重定向/刷新,但不更新DB中的字段

•更新字段,但页面仍将重定向

编辑:在尝试在AJAX中这样做之后,我发现我被阻止了外部URL,感谢r4phG帮助我解决了这个问题!

您的提交是否导致重定向/刷新?

如果您必须提交表单以更新数据库中的字段,则必须提交表单。但是如果您不想刷新所有页面,则应该考虑使用Ajax,因为您的提交不会刷新页面

示例来自jquery ajax doc:

$("#form").submit(function() { 
      $.ajax({ 
             url:'confidential-url', 
             method:'POST' , 
             data:$(this).serialize() //submits your form information
      }); 
      return false; // prevent the server form submission 
});

jQuery ajax文档