我认为 jquery .submit() 方法的使用方式有些混乱。从jquery 文档:
当用户尝试提交表单时,提交事件被发送到元素。它只能附加到元素上。<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
});
您可能需要查看一些 3rd 方插件来完成您想要做的事情。一个这样的插件是Uploadify。