我是jquery和ajax的新手。
我的代码本质上调用了一个ping.php
脚本,fsockopen带有if else语句,用于向上或向下打印服务器,创建我的服务器/服务的仪表板
目前,当我加载页面时,它调用打印结果在服务器中向上或向下打印。
(使用merto.js学习和玩耍)
我遇到的问题是我正在努力的是我想刷新div说每3秒刷新一下php脚本
<div class="tiles red">
<div class="live-tile" id="tile1">
<div><?php include"ping1.php"; ?></div>
</div>
</div>
我尝试使用以下内容,但我一定做错了。
function startActivityRefresh() {
timer = setInterval(function() {
$("tile1").load('ping1.php');
}, seconds*1)
即使我的实验相当简单,我也不想简单地刷新整个页面
我已经通过在4220上创建一个可用端口来测试它,而不是在几秒钟之后将其删除。
由于
答案 0 :(得分:0)
您已在<div class="live-tile" id="tile1">
并通过$("tile1")
调用哪个错误来获取您需要的#
元素并逐个获取元素.
$("#tile1").load('ping1.php')
.load()需要网址包含请求发送到的网址的字符串 $("#tile1").load(' your url to ping1.php')
答案 1 :(得分:0)
如果您只是想查看服务器是启动还是关闭,我建议您只使用一小部分.ajax()(在演示.get()中使用的简写)来代替{{3 }}
以下是我的status.php
脚本的样子。
<?php
// ping google.
$server = fsockopen('173.194.46.64', '80');
if ($server) {
echo 'Online';
fclose($server);
} else
echo 'Offline';
我ping谷歌。将IP更改为您的服务器。
这是我的ajax调用的样子
function checkServerStatus() {
var status = $('#tile1'); // your element
if (window.console && window.console.log)
console.log('Checking server for status.');
$.ajaxSetup({
cache: false
});
$.get('status.php')
.done(function (e) {
// let's suppose "e" will return "Online" or "Offline"
// remove online and offline classes
status.removeClass('status-offline status-online');
// add a class if offline or online.
switch (e) {
case 'Online':
status.addClass('status-online');
break;
case 'Offline':
status.addClass('status-offline');
break;
}
// set status text
status.text(e);
// check status every 5 seconds
setTimeout(function () {
checkServerStatus();
}, 5000);
})
.fail(function (e) {
if (window.console && window.console.log) console.log(e);
});
}
// let's rock!
checkServerStatus();