0

我想要做的是显示函数何时完成/准备好过程......我尝试了这段代码但没有工作......我尝试使用“.done”但仍然没有工作......我怎么能看到功能什么时候准备好?

这是我尝试的代码...

HTML:

 <div class="Load_Div"></div>
 <br /><br />
 <div class="Result_Data"></div>

查询:

  function Load_HTML() {
   $('.Load_Div').load('file.php', function() {
   });
  }

  Load_HTML().ready( function() { 
      $( ".Result_Data" ).text( "Function Ready" ); 
  } );

这是代码:

http://jsfiddle.net/w9Xf5/

4

4 回答 4

3

只有文档ready()方法,没有其他元素、函数或任何有现成方法的东西。

至于你的函数,它总是准备好的,但是当你在做 ajax 时,你真正想做的是检查 ajax 调用是否完成,并且 jQuery 内置了回调和延迟(其中 load() 没有似乎暴露,所以done()不会工作)为此:

function Load_HTML(callback) {
    $('.Load_Div').load('file.php', callback);
}

Load_HTML(function () {
    $(".Result_Data").text("Function Ready");
});
于 2013-07-28T13:08:55.033 回答
2

您可以创建自己的回调

function Load_HTML( callback ) {
   $('.Load_Div').load('file.php', callback );
}

接着

Load_HTML( function() {
   $( ".Result_Data" ).text( "Function Ready" );
});
于 2013-07-28T13:09:19.793 回答
0

您可以使用 Deferred-object 并为其提供许多功能,例如额外加载 php-script 以进行处理。每次调用函数数组后,都可以评估该过程。请查看此 JQuery-API 以获取更多信息

于 2013-07-28T14:55:19.803 回答
0

从您的方法中删除Load_HTML().ready()并插入$( ".Result_Data" ).text( "Function Ready" );回调函数。.load()

于 2013-07-28T13:09:10.707 回答