我有一个用户控件,里面有一个计时器。使用用户控件本身内的javascript每5秒更新一次计时器。在运行时,会创建一些用户控件实例。我将它们放在更新面板中。当只有一个用户控件实例时,计时器工作正常。但是当有多个实例时,只有最后一个实例每5秒更新一次。早期的实例没有得到更新。
这是我的javascript:
var start = new Date('<%=session.startTime%>');
var stat = '<%=session.status%>'
UpdateValues();
AutoUpdateValues();
function AutoUpdateValues(){
setInterval(function () {
UpdateValues();
}, 5000);
}
function UpdateValues() {
//update time elapsed
var totalSec = Math.ceil((new Date() - start) / 1000); //time elapsed in seconds
var hr = Math.floor(totalSec/3600);
var min = Math.floor((totalSec % 3600)/60);
var sec = totalSec % 60;
if (stat == 2) {
$('#<%=lblTimeElapsed.ClientID%>').text(hr + "h " + min + "m " + sec + "s" );
}
}
我读到了将上下文传递给我的方法here的用法,但我不知道如何在我的代码中实现它。 有什么帮助吗?感谢