如何从ajax即时加载php?
我正在尝试使用ajax直接加载页面。详情如下: HTML: do.php:如何从ajax即时加载php?,php,jquery,ajax,Php,Jquery,Ajax,我正在尝试使用ajax直接加载页面。详情如下: HTML: do.php: <?php //Do whatever... echo "Done!"; ?> 我看到的是:页面首先加载,在“反馈”div被写入之前有一个延迟。我怎样才能解决这个问题呢?据我所知,当然会有延迟。假设包含[…]的页面现在已在第0秒加载: $(document).ready(function() { $.ajax({ url: 'do.php', su
<?php
//Do whatever...
echo "Done!";
?>
我看到的是:页面首先加载,在“反馈”div被写入之前有一个延迟。我怎样才能解决这个问题呢?据我所知,当然会有延迟。假设包含
[…]
的页面现在已在第0秒加载:
$(document).ready(function() {
$.ajax({
url: 'do.php',
success: function(data){
$('#feedback').html(data);
});
});
调用,因为在加载文档时它显然是可见的。因此,假设在文档准备就绪后的第3秒调用它,您可以参考详细信息,现在您将看到反馈
div空白3秒
我可以建议两件事:
(假设页面的同一目录中有loader.gif
)。通过这样做,您将使用户直观地了解某些处理正在进行并将加载数据文件\u get\u contents()
或包含()
,那么就我所知,文件\u get\u contents
将执行页面,然后加载,而include将加载,然后在include()中执行页面中的变量可用,而文件中的内容不可用,但CSS在这两种情况下都有效
据我所知,当然会有这样的延误。假设包含
[…]
的页面现在已在第0秒加载:
$(document).ready(function() {
$.ajax({
url: 'do.php',
success: function(data){
$('#feedback').html(data);
});
});
调用,因为在加载文档时它显然是可见的。因此,假设在文档准备就绪后的第3秒调用它,您可以参考详细信息,现在您将看到反馈
div空白3秒
我可以建议两件事:
(假设页面的同一目录中有loader.gif
)。通过这样做,您将使用户直观地了解某些处理正在进行并将加载数据文件\u get\u contents()
或包含()
,那么就我所知,文件\u get\u contents
将执行页面,然后加载,而include将加载,然后在include()中执行页面中的变量可用,而文件中的内容不可用,但CSS在这两种情况下都有效
据我所知,当然会有这样的延误。假设包含
[…]
的页面现在已在第0秒加载:
$(document).ready(function() {
$.ajax({
url: 'do.php',
success: function(data){
$('#feedback').html(data);
});
});
调用,因为在加载文档时它显然是可见的。因此,假设在文档准备就绪后的第3秒调用它,您可以参考详细信息,现在您将看到反馈
div空白3秒
我可以建议两件事:
(假设页面的同一目录中有loader.gif
)。通过这样做,您将使用户直观地了解某些处理正在进行并将加载数据文件\u get\u contents()
或包含()
,那么就我所知,文件\u get\u contents
将执行页面,然后加载,而include将加载,然后在include()中执行页面中的变量可用,而文件中的内容不可用,但CSS在这两种情况下都有效
据我所知,当然会有这样的延误。假设包含
[…]
的页面现在已在第0秒加载:
$(document).ready(function() {
$.ajax({
url: 'do.php',
success: function(data){
$('#feedback').html(data);
});
});
调用,因为在加载文档时它显然是可见的。因此,假设在文档准备就绪后的第3秒调用它,您可以参考详细信息,现在您将看到反馈
div空白3秒
我可以建议两件事:
(假设页面的同一目录中有loader.gif
)。通过这样做,您将使用户直观地了解某些处理正在进行并将加载数据文件\u get\u contents()
或包含()
,那么就我所知,文件\u get\u contents
将执行页面,然后加载,而include将加载,然后在include()中执行页面中的变量可用,而文件中的内容不可用,但CSS在这两种情况下都有效
您可以立即开始加载,然后在完成所有操作后添加数据
var _data = null;
var _ready = false;
$.ajax({
url: 'do.php',
success: function(data){
_data = data;
tryAddData();
}
});
$(document).ready(function() {
_ready = true;
tryAddData();
});
function tryAddData(){
if(_ready && _data !== null){
$('#feedback').html(_data);
}
}
您可以立即开始加载,然后在完成所有操作后添加数据
var _data = null;
var _ready = false;
$.ajax({
url: 'do.php',
success: function(data){
_data = data;
tryAddData();
}
});
$(document).ready(function() {
_ready = true;
tryAddData();
});
function tryAddData(){
if(_ready && _data !== null){
$('#feedback').html(_data);
}
}
您可以立即开始加载,然后在完成所有操作后添加数据
var _data = null;
var _ready = false;
$.ajax({
url: 'do.php',
success: function(data){
_data = data;
tryAddData();
}
});
$(document).ready(function() {
_ready = true;
tryAddData();
});
function tryAddData(){
if(_ready && _data !== null){
$('#feedback').html(_data);
}
}
您可以立即开始加载,然后在完成所有操作后添加数据
var _data = null;
var _ready = false;
$.ajax({
url: 'do.php',
success: function(data){
_data = data;
tryAddData();
}
});
$(document).ready(function() {
_ready = true;
tryAddData();
});
function tryAddData(){
if(_ready && _data !== null){
$('#feedback').html(_data);
}
}
$(document).ready(…)表示等待页面加载。然后当然需要一些时间来完成请求。不要用
$(文档)包围。准备好(…)
部分,当这些行被“读取”时,它将立即运行。没有延迟,任何事情都不会发生。您对当前设置的了解还不够,无法真正了解延迟的来源。初始页面加载花费了多少时间?进行AJAX调用需要多少时间?有多少时间花在不同的服务器端进程上?加载注入的HTML指定的外部资源需要多长时间?uhhhmmm为什么要使用xhr进行初始加载。那个