如何防止表单提交后重定向?

发布于 2024-08-29 01:47:03 字数 459 浏览 5 评论 0原文

我搜索了该网站,找到了各种解决方案,其中大多数建议使用

return false;

问题是我正在使用这段代码来提交表单:

$(function() {  
    $("#snd").click(function() {  
        var dendar = "http://" + $("#inpt").val() + ":" + $("#pwd").val() + "secretsite.lol/something.xml";
        $("#formen").attr("action", dendar);
        $("#formen").submit();
        alert(dendar);
        return false;
    });  
});

警报只是让我知道表单已提交。谢谢

你们!

I have searched the site and I've found various solutions, most of them suggesting using

return false;

Problem is that I'm using this piece of code to submit the form:

$(function() {  
    $("#snd").click(function() {  
        var dendar = "http://" + $("#inpt").val() + ":" + $("#pwd").val() + "secretsite.lol/something.xml";
        $("#formen").attr("action", dendar);
        $("#formen").submit();
        alert(dendar);
        return false;
    });  
});

The alert is just there to let me know that the form has been submitted..

Thanks guys!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

非要怀念 2024-09-05 01:47:03

您无法阻止重定向,但您可以将表单提交到(可能是隐藏的)iframe,这样您就不会离开当前页面

如果帖子与当前页面位于同一服务器并且您不在,Ajax 会更好t 发布文件数据

You can't prevent a redirect, but you can submit the form into a (possibly hidden) iframe so you don't leave the current page

Ajax would be better if the post is to the same server as the current page and you aren't posting file data

岁月蹉跎了容颜 2024-09-05 01:47:03

您必须在 Submit() 调用的事件处理程序中返回 false,而不是在单击处理程序中返回 false。

$("#formen").attr("action", dendar); $("#formen").submit(
   function() { 
      return false;
   }
);

正如其他人所指出的,这将完全阻止表单提交。您想要做的是收集表单数据并使用 Ajax 调用提交它。

$.post( url, { var1: value1, var2: value2 等... });

You must return false within the submit() call's event handler, not the click handler.

$("#formen").attr("action", dendar); $("#formen").submit(
   function() { 
      return false;
   }
);

As pointed out by others, this will stop the form from submitting at all. What you want to do is collect the form data and submit it using an Ajax-call.

$.post( url, { var1: value1, var2: value2 etc... });

因为看清所以看轻 2024-09-05 01:47:03

只使用 AJAX 调用和 POST 到数据处理程序怎么样?这听起来像你想要的。

What about just using an AJAX call with POST to a data handler? That sounds like what you want.

我ぃ本無心為│何有愛 2024-09-05 01:47:03

使用 jquery 1.4:

$("#formen").live("submit",function(e) {  
   e.preventDefault();
}

这将阻止表单实际提交。然后你就可以自由地对应该发布的数据执行任何操作(使用ajax,在页面上打印一些内容......)。

Using jquery 1.4:

$("#formen").live("submit",function(e) {  
   e.preventDefault();
}

This will prevent the form from actually submitting. Then you're free to do whatever with the data that was supposed to be posted (use ajax, print something on the page...).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文