Javascript 当表在$(选择器).load(URL)之后准备就绪时运行代码

Javascript 当表在$(选择器).load(URL)之后准备就绪时运行代码,javascript,jquery,ajax,Javascript,Jquery,Ajax,我将一个表加载到文档中,并希望将footbale函数绑定到它。但是无论我尝试什么(ready,load),我都无法获得一个onload事件来完成这项工作。我的解决方法是超时。那可不漂亮。但它证明了代码没有错误 <body> <div id="table_wrapper"></div> </body> <script> $("#stable_wrapper").load("rss2table.php"); // <table

我将一个表加载到文档中,并希望将footbale函数绑定到它。但是无论我尝试什么(ready,load),我都无法获得一个onload事件来完成这项工作。我的解决方法是超时。那可不漂亮。但它证明了代码没有错误

<body>
  <div id="table_wrapper"></div>
</body>
<script>
  $("#stable_wrapper").load("rss2table.php"); // <table id="termine">

  setTimeout(() => {           
      $('#termine').footable({
      components: {
                filtering: FooTable.MyFiltering
      }
   });
 }, 1000); // min. timeout to run propper
</script>
我在控制台中“准备就绪”,但其余的都不起作用。
有没有办法解决这个问题?

假设
footable()
是您正在使用的有效库,那么要解决这个问题,您应该在AJAX调用完成后使用
load()
的回调来执行逻辑

从理论上讲,
setTimeout()
也可以做到这一点,但它不是最好的方法,因为如果请求在1s之前完成,则会让用户等待太长时间,或者在请求完成之前运行,但什么也没有发生。鉴于你所描述的行为,这里的情况似乎是后者

要定义回调,请将逻辑放在函数中,该函数作为
load()
的第二个参数提供:


假设
footable()
是您正在使用的有效库,那么要解决这个问题,您应该在AJAX调用完成后使用
load()
的回调来执行您的逻辑

从理论上讲,
setTimeout()
也可以做到这一点,但它不是最好的方法,因为如果请求在1s之前完成,则会让用户等待太长时间,或者在请求完成之前运行,但什么也没有发生。鉴于你所描述的行为,这里的情况似乎是后者

要定义回调,请将逻辑放在函数中,该函数作为
load()
的第二个参数提供:


您在哪里定义了
footable()
?它是一个自定义事件吗?load方法有一个回调,将您的代码放在其中。您在哪里定义了
footable()
?它是一个自定义事件吗?load方法有一个回调,请将代码放入其中
$('#termine tbody').ready(function() {
    // Run code
    console.log("ready");

    $('#termine').footable({
        components: {
            filtering: FooTable.MyFiltering
        }
    });
});
$("#stable_wrapper").load("rss2table.php", function() {
  $('#termine').footable({
    components: {
      filtering: FooTable.MyFiltering
    }
  });
});