Ich weiß, es sollte eine einfache Möglichkeit, dies zu tun, aber ich denke, mein Gehirn funktioniert heute nicht. Ich muss eine Seite in x Sekunden aktualisieren.Aktualisieren Sie eine Webseite in ASP.NET automatisch und erfassen Sie die Zeit bis zur nächsten Aktualisierung
Response.AddHeader("Refresh", "300");
Das ist in Ordnung, außer ich muß auch bis zur nächsten Aktualisierung der Anzahl der Minuten und Sekunden angezeigt: Ich kann die folgend in .NET tun.
Ich verwende den folgenden Code in Javascript Also das von dem Client zu tun:
<script type="text/javascript"">
//enter refresh time in "minutes:seconds" Minutes should range from 0 to inifinity. Seconds should range from 0 to 59
var limit="0:30"
if (document.images){
var parselimit=limit.split(":")
parselimit=parselimit[0]*60+parselimit[1]*1
}
function beginrefresh(){
if (!document.images)
return
if (parselimit==1)
window.location.reload()
else{
parselimit-=1
curmin=Math.floor(parselimit/60)
cursec=parselimit%60
if (curmin!=0)
curtime=curmin+" minutes and "+cursec+" seconds left until page refresh!"
else
curtime=cursec+" seconds left until page refresh!"
window.status=curtime
setTimeout("beginrefresh()",1000)
}
}
window.onload=beginrefresh;
</script>
Dies funktioniert mit einer Ausnahme - jedes Mal, wenn die Seite aktualisiert wird, gibt der Browser (IE) die nag Nachricht über das erneute Herunterladen von Inhalten oder etwas. Das wird nicht funktionieren. Dies ist eine Seite, die Benutzer den ganzen Tag geöffnet haben und die ohne Benutzereingriff aktualisiert werden muss. Ich nehme an, ich könnte die Nachricht entfernen, die die Zeit bis zur nächsten Aktualisierung anzeigt und nur die ASP.NET-Zeile verwenden, aber wenn jemand eine bessere Idee hat, würde ich es wirklich zu schätzen wissen.
Dies hat den Trick gemacht. Sollte das Nachladen Ding bemerkt haben. Macht vollkommen Sinn, dass dies den IE Nag verursachen würde. Gehirn funktioniert heute nicht - kann nicht berechnet werden. Gefahr wird Robinson, Gefahr! Vielen Dank! – user69889