我正在尝试读取php文件的输出,将其写入div(使用jQuery生成),然后每分钟检查php输出。我已经在所有浏览器中测试了php文件,并且它工作正常,所以它绝对是js的东西。这是我到目前为止所尝试的内容(他们在所有内容中工作但是IE )。
php将输出:
<p>Example alert text</p>
现在,我有:
jQuery('<div/>', {
id: 'emerg-alert-system'
}).prependTo( "body" ).css({
"background": "#b40000",
"color": "white",
"display": "block",
"max-width": "100%",
"font-family": "Arial,sans-serif",
"font-size": "1rem",
"text-align": "center",
"text-transform": "uppercase",
"letter-spacing": "1px"
});
function get_alert() {
$.ajaxSetup( { cache: false } );
var request = $.ajax({
url: "http://example.com/alert.php",
type: "GET",
dataType: "html",
cache: false
});
request.done(function(msg) {
$("#emerg-alert-system").html(msg);
});
};
setInterval( get_alert, 1*60*1000 );
get_alert();
我已经尝试过使用和不使用ajaxSetup / ajax缓存:false,我也尝试过使用$ .get()和$ .post()(换一个用于另一个)
function get_alert() {
$.ajaxSetup( { cache: false } );
$.get('http://example.com/alert.php', function(data) {
$( "#emerg-alert-system" ).html( data );
});
};
setInterval( get_alert(), 1*60*1000 );
get_alert();
唯一产生的是:
<div id="emerg-alert-system"> </div>
还有什么我应该尝试的吗?
答案 0 :(得分:0)
所以我的同事和我重新做了这件事,最终让它按照我们的喜好工作。这是新的JS:
jQuery(document).ready(function () {
jQuery('<div/>', {
id: 'emerg-alert-system'
}).prependTo( "body" ).css({
"background": "#b40000",
"color": "white",
"display": "block",
"max-width": "100%",
"font-family": "Arial,sans-serif",
"font-size": "1.2em",
"text-align": "center",
"text-transform": "uppercase",
"letter-spacing": "1px",
"line-height": "1.5"
});
function get_alert () {
$.ajaxSetup({ cache: false });
$.get('http://example.com/alert.php').done(function ( data ) {
$("#emerg-alert-system").html(data);
if( !$.trim( $('#emerg-alert-system').html() ).length ) {
$("#emerg-alert-system").css({ "display": "none" });
}
});
}
window.onload = function () {
get_alert();
setInterval( get_alert, 1*60*1000 );
}
});