我的 jQuery 代码(使用 ajax)从本地 php 脚本(pgiproxy.php)请求数据。此脚本抓取所需的网页。我为此使用以下 php 函数:
function grabPage($pageURL) {
$homepage = file_get_contents($pageURL);
echo $homepage;
}
然后,我使用 jQuery 从返回的数据中提取我需要的 html 代码,并将其插入到名为#BFX 的 div 中,如下所示:
$("#btnNewLoadMethod1").click(function(){
$('#temp1').load('pgiproxy.php', { data : $("#formdata").serialize(), mode : "graph"} , function() {
$('#temp').html( $('#temp1').find('center').html() );
$('#BFX').html( $('#temp').html() );
});
});
这工作正常。我得到了需要在屏幕上显示在正确 div 中的 html 数据(这是一个 gif 图像)。
问题是我可以看到 html 数据加载到 div 中(取决于网络速度),但我想要的是仅在 ajax 请求完全完成时将提取的 html 代码插入#BFX。
我尝试在 load() 函数之外使用
async:false
和调用$('#BFX').html( $('#temp').html() );
,效果相同。