例如,我想每5000毫秒更新一次局部视图。
我用下面的代码来做到这一点:
window.setInterval(function () {
$.get("/Features/ShowDateTime").then(function (r) {
$('#divDateTime').html(r);
});
}, 5000)
此函数真正每隔5000毫秒运行一次(通过内部函数中的debugger
命令检查),但ShowDateTime
动作仅运行一次(通过在其控制器中的动作中使用断点检查)。 / p>
那是什么问题?
答案 0 :(得分:0)
假设代码本身正在运行,则很可能在后续调用中将缓存数据取回。您需要缓存呼叫。一种简单的方法是将当前时间戳附加到URL的末尾:
window.setInterval(function () {
$.get("/Features/ShowDateTime?" + Date.now()).then(function (r) {
$('#divDateTime').html(r);
});
}, 5000)
这会使您的浏览器每次都认为它是一个不同的URL,因此它不会缓存并返回相同的结果。