Javascript jquery表单有时会发布普通的html帖子

Javascript jquery表单有时会发布普通的html帖子,javascript,jquery,html,Javascript,Jquery,Html,javascript: (function(){ $('form').ajaxForm({ beforeSend:function(){ $('.bar').width('0%'); $('#output').empty(); }, uploadProgress:function(event, position, total, percentC

javascript:

 (function(){
        $('form').ajaxForm({
            beforeSend:function(){
                $('.bar').width('0%');
                $('#output').empty();
            },
            uploadProgress:function(event, position, total, percentComplete){
                $('.progress').show();
                $('.bar').width('0%');
            },
            complete:function(xhr){
                $('.progress').hide();
                $('.bar').width("100%");
                $('#output').html(xhr.responseText);
            }
        }); 
    })();


    $("#upload").change(function(){
            $("form").submit();
        });
html:


我有一个输入文件,使用jquery.form.js发布到php,如果php检测到上传文件有任何问题,则在div上输出消息

我测试了几次,效果很好,但有时如果我尝试快速点击并选择图像。这将成为正常的职位。我将其放在弹出框中,并使用jquery将其加载到另一个页面。因此,我需要确保表单不会运行正常的html帖子


有什么办法可以解决这个问题吗?

我没有重复这个问题,但是您可以尝试通过在
更改
事件和
键控
事件中包含
预防默认
来防止触发输入的默认操作

$("#upload").change(function(event){
    event.preventDefault();
    $("form").submit();
})
.keyup(function(event) {
    event.preventDefault();
});

它不起作用,我只是尝试,有时仍然会发生如果表单上没有
action
属性,它仍然会发生吗?我只是做了一些测试,我注意到问题是由load()引起的;当我关闭popBox div并单击上载按钮时,popBox div再次加载内容,这会导致脚本问题,我已将div更改为iframe&它现在工作正常,谢谢帮助!
$("#upload").change(function(event){
    event.preventDefault();
    $("form").submit();
})
.keyup(function(event) {
    event.preventDefault();
});