繁体   English   中英

jQuery / Ajax在动态PHP内容加载之前运行

[英]Jquery/Ajax running before dynamic php content loaded

我有一个动态页面,当单击预订链接时,该页面将从外部PHP文件加载。

我的问题是我有时需要在PHP页面完全加载之前尝试执行的jQuery代码直接运行(具体请参见下面的内容,然后删除部分)。 因此,当我尝试加载div时,jQuery有时可以工作,而其他时候则不能。

根据我在其他示例中看到的内容, $(document).ready(function()应该阻止jQuery在页面完全加载之前执行,但是由于我正在加载特定的div(内容)而不是整个页面似乎不起作用?

$(document).ready(function(){
 $(document).on('click', '.booking', function (){
  $('#content').load('calendar.php');

     $.getJSON(url,data, function(data) {
     $.each(data, function(index, data) {


  $("#blocksid"+data.slot_id).css("background-color","#009cd0");
      $("#follow"+data.slot_id).hide();
  $("#remove"+data.slot_id).show();       
});

 });
  return false;
});
});

在此先感谢您的协助!

您需要设置:
$.ajaxSetup({ async: false });
然后通过以下方式将其重新打开:
$.ajaxSetup({ async: true });
或使用

$.ajax({
async:false
});

为了以可预测的方式实现您的期望,应在将内容加载到div之后运行相关的javascript代码。 只需为load方法创建一个回调函数,并将您的依赖代码包含在其中。

$('#content').load("calendar.php", function() {
  //put the code here, that you need to run after loading content to above div
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM