我想知道加载外部网页(同一服务器)的好方法是什么。我已经尝试过.load()和.get()但是,外部页面有一个PHP脚本,每隔几秒就会发出一次信息,.load()和.get()只在php完成后加载它。我试过iFrame,加载它显示PHP脚本输出的信息。但是,我真的不喜欢使用iFrame。谢谢!
答案 0 :(得分:1)
如果目标用于在您的网站上更新PHP信息(每隔几秒吐出一次),那么您想要做的就是在setInterval例程中使用AJAX。 / p>
See this post for the basics of AJAX - 它真的比你想象的要简单。 (您可能首先要查看底部链接的简单示例。请提供您认为有用的任何内容。)
一旦你进行了简单的ajax交换,就把它放到一个名为doAjax()
的函数中 - 然后创建一个setInterval,如下所示:
setInterval('doAjax();',60000);
Here is an important note when considering setInterval
以下是一个简单的复制/粘贴(能)示例,可让您准确了解我的意思:
HTML / javascript: index.php
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<style>
#timeDiv{width:40%;height:200px;background:wheat;padding:10px;}
</style>
<script type="text/javascript">
$(document).ready(function() {
doAjax();
window.setInterval(function(){
doAjax();
},2000);
}); //END document.ready
function doAjax() {
$.ajax({
type: "POST",
url: "your_php_processor.php",
success: function(myData) {
$('#thetime').html(myData);
}
});
}
</script>
</head>
<body>
<div id="timeDiv">
The time is: <span id="thetime"></span>
</div>
</body>
</html>
现在,PHP方面...... your_php_processor.php
<?php
$d = date("h:i:s");
echo $d;