我正在尝试在ajax响应上重新加载页面,但是它的页面却闪烁,但它没有刷新或重新加载页面,下面是我的代码。
function callAjaxForCount(getCountValue){
var maxValue = getCountValue;
var interval = 3000;
$.ajax({
type: "GET",
url: "/ServletToCheckCondition",
async: false,
data: {"totalLoggedMembers": maxValue},
success: function(data) {
for (var key in data) {
var retValue = data[key];
if(retValue == 'true')
{
location.reload();
}
else if(retValue == 'false')
{
}
}
},
error: function() {
alert("Failed. Try Again.","error");
},
complete: function () {
// Schedule the next
window.setInterval(callAjaxForCount(maxValue),interval);
}
});
}
这是在一个window.open弹出窗口中,此函数将在弹出窗口启动时调用,并且如果条件满足并且返回true则每隔3秒重复调用一次,则页面必须重新加载,它将动态设置新值到页面,但页面并没有不断刷新它的闪烁。
我使用了location.reload(),我也尝试保留一个隐藏按钮并提交页面但没有运气。
答案 0 :(得分:1)
尝试
function callAjaxForCount(getCountValue){
var maxValue = getCountValue;
var interval = 3000;
$.ajax({
type: "GET",
url: "/ServletToCheckCondition",
async: false,
data: {"totalLoggedMembers": maxValue},
success: function(data) {
for (var key in data) {
var retValue = data[key];
if(retValue == 'true')
{
window.location.reload();
}
else if(retValue == 'false')
{
}
}
},
error: function() {
alert("Failed. Try Again.","error");
},
complete: function () {
// Schedule the next
window.setInterval(callAjaxForCount(maxValue),interval);
}
});
}