Php .submit()不重新加载页面

Php .submit()不重新加载页面,php,jquery,Php,Jquery,我正在尝试使用jquery进行一些文件上传。上载框必须位于对话框中。 现在我只想知道在我点击对话框的上传按钮之后。我怎样才能提交,但页面不加载。 我试过用这个 $('#uploadForm').submit().preventDefault(); 它根本没有行动 html <script> $( "#dialog-upload" ).dialog({ autoOpen: false, he

我正在尝试使用jquery进行一些文件上传。上载框必须位于对话框中。 现在我只想知道在我点击对话框的上传按钮之后。我怎样才能提交,但页面不加载。 我试过用这个 $('#uploadForm').submit().preventDefault(); 它根本没有行动

html

<script>
                $( "#dialog-upload" ).dialog({
                autoOpen: false,
                height: 200,
                width: 350,
                modal: true,
                buttons: {
                "Upload": function() {                  
                    var bValid = true;
                    bValid = bValid && checkCSV()
                    if(bValid){
                        **$('#uploadForm').submit().preventDefault();**

                        }
                $( "#dialog-upload" ).dialog( "close" );
                        },
            Cancel: function() {                
                allFields.val( "" ).removeClass( "ui-state-error" );
                $( this ).dialog( "close" );
            }
                },
            close: function() {
                allFields.val( "" ).removeClass( "ui-state-error" );
                $( this ).dialog( "close" );    

                }
                });
</script>

  <div id="dialog-upload" title="Upload csv file">
    <form>
    <fieldset>
        <form action='ajax.php' id = 'uploadForm' method='post' enctype='multipart/form-data'>
        <input type="text" name="file" id="fileUpload" size = 30 class="text ui-corner-all" />
        </form>
    </fieldset> 

    </form>
</div>

事件
委托用于表单提交

$('#uploadForm').submit(function( e ){
  e.preventDefault(); // browser 'submit' event behavior prevented
});
而不是:

"Upload": function() {                  
    var bValid = true;
    bValid = bValid && checkCSV()
    if(bValid){
       $('#uploadForm').submit();
    }
    // ......

您可以在提交之前将某些内容绑定到提交事件

$(function() {
    $('#uploadForm').submit(function(evt) {
        evt.preventDefault();
    });
});

然后在原始位置不使用preventDefault()调用.submit()。

是否需要通过jquery加载表单?或者您可以简单地创建表单,然后在
元素上使用
onsubmit=“javascript:mySubmitMethod();return false;”
返回false从表单中删除提交内容,因此页面不会刷新。另外,设置
action=”“
也应该有帮助。需要通过jquery从加载表单。如前所述,此表单必须在对话框表单中显示。此方法没有将任何值传递给php脚本。有人可以在这方面帮助我吗?抱歉,我完全错过了您正在上载文件的消息。如果你想通过ajax上传一个文件,这比简单的提交表单要复杂一些。表单提交可以通过直接调用jQuery.post(或jQuery.ajax)轻松完成。对于文件上传,您可能需要考虑使用插件。这个堆栈溢出问题附带了很多有用的资源:
$(function() {
    $('#uploadForm').submit(function(evt) {
        evt.preventDefault();
    });
});