使用jquery提交时取消提交

时间:2012-07-19 13:43:25

标签: jquery

我正在使用jquery.submit()方法静默提交表单,即没有页面刷新。当用户选择文件并单击上传按钮时,上载开始并启用取消按钮。但我不知道如何在两者之间取消此上传。官方jquery文档说

“我们可以通过在事件对象上调用.preventDefault()来取消提交操作,或者从我们的处理程序返回false”,但我不明白如何在我的情况下使用它。 以下是我用于提交表单的代码。

$('#button').click(function() {
    $('#form').submit();
});

2 个答案:

答案 0 :(得分:0)

有一次,提交已经到达服务器,你可以用它做任何事情(表格)。

执行return false;最多可以阻止提交。

答案 1 :(得分:0)

我认为对如何使用jquery .submit()方法存在一些困惑。来自jquery docs

  

当用户尝试时,提交事件将发送到元素   提交表格。它只能附加到元素上。表格可以   通过点击明确的<input type="submit">提交,   <input type="image"><button type="submit">,或按Enter键   当某些表单元素具有焦点时。

这意味着所有这些方法实际上都是处理表单的提交事件。如果您取消该活动,则会取消您的文件上传。中间没有。您要么允许上传文件,要么完全取消表单提交(上传)。另外,要使用.preventDefault(),它看起来像这样:

$('#button').click(function() {
    $('#form').submit();
});

$('#form').submit(function(e) {
    e.preventDefault();
    // could also use return false; as a previous poster 
    // suggested but I have found e.preventDefault() to be more reliable
});

您可能需要查看一些第三方插件才能完成您要执行的操作。一个这样的插件是Uploadify