Ajax JQuery:等待任何事件完成

Ajax JQuery:等待任何事件完成,ajax,jquery,Ajax,Jquery,我有以下代码和元素 function refreshcontent(){ //refresh content ajax query } $("#contentpage").on("submit","#fileuploadform",function(event){ refreshcontent(); }); <form id="fileuploadform" action="fileupload" METHOD="P

我有以下代码和元素

  function refreshcontent(){
              //refresh content ajax query
   }

 $("#contentpage").on("submit","#fileuploadform",function(event){

        refreshcontent();

  }); 

  <form id="fileuploadform" action="fileupload" METHOD="POST" enctype=multipart/form-data target="_blank" >
  <input type="file" name="myfile"/>
  <input type="submit" value="upload"/>
  </form>
  <div id="contentpage"> </div>
我希望在完全提交表单时刷新我的contentpage。 我知道setInterval函数,我可以使用它在一段时间后调用ajax刷新 但问题是我的文件大小不是固定不变的,它可能会有所不同,提交表单所需的时间也可能有所不同。。 此外,如果我可以使用成功处理程序提交表单,我也不会使用ajax提交表单


有什么办法可以解决这个问题吗?我们可以等到我的表格提交后再说吗?

你有没有试过承诺


如果您不使用Ajax,您的页面将被重新加载,因此您不可能运行任何脚本。一种可能的解决方法不确定是在新窗口加载时在新窗口上执行脚本:window.opener.refreshcontent;是的,现在有一些更改,以前它是在我的文件上载之前或提交事件完成之前刷新当前窗口,这就是为什么我的文件没有上载的原因可能是事件对象在完成之前被销毁,但现在,当我放置window.opener.refreshcontent时,我的文件已上载,但contentpage div未刷新。。这是因为脚本在新窗口中运行,并且与当前窗口没有链接吗?我不理解这一点:为什么不使用ajax提交它?!事实上,先生,我正在上传一个word文档文件,该文件将由服务器处理,数据将被提取,并应显示在新窗口中。。我也尝试过使用ajax,但我正在使用引导模式进行文件上载控制,在加载模式时,提交事件会被触发很多次。我在谷歌上搜索了很多,想找到原因和解决办法,但我找不到。对不起,如果我不能解释清楚他没有使用Ajax,只是在一个新的选项卡/窗口中发布了一篇简单的帖子