您好我正在尝试刷新页面中的文本,该文本通知服务器端计算的状态,同时它们正在完成。计算从获取请求开始,并且只有在获取尚未完成时才必须进行刷新。我试图通过在 setInterval 中获取服务器上文本文件的内容并在 GET 完成后关闭该设置间隔来做到这一点。我的问题是,当我查看正在发生的事情时,一开始我只看到一个对文本文件的请求,然后什么也没有。我希望每 200 毫秒从我的代码中看到一个请求。我附上js代码并提前感谢你。onclick 启动的函数是 disps(name);
function instant(nn) {
$.get("./track.txt", function (data) {
$('[name|="' + nn + '"]').html('');
$('[name|="' + nn + '"]').html(data);
/*$('[name|="'+ nn +'"]').first().html('');
$('[name|="'+ nn +'"]').first().append('<img src="loading.gif">');*/
});
}
function disps(nn) {
aa = $('[name|=input_data]').val();
/* $('[name|="'+ nn +'"]').html('');
$('[name|="'+ nn +'"]').html('Analysed');
$('[name|="'+ nn +'"]').first().html('');
$('[name|="'+ nn +'"]').first().append('<img src="loading.gif">'); */
var refreshId = setInterval(instant(nn), 200);
$.get("./loop.php?query=" + aa, function (data) {
/* $('[name|="'+ nn +'"]').find('img').remove().end(); */
instant2(nn, refreshId);
$('[name|="' + nn + '"]').first().append(data);
});
}
function instant2(nn, refreshIntervalId) {
clearInterval(refreshIntervalId);
$('[name|="' + nn + '"]').html('');
$('[name|="' + nn + '"]').first().html('');
}