У меня есть таймер обратного отсчета в javascript, который вызывается кодом, использующим asp.net VB. Я не могу найти способ отслеживать время.ASP.NET Javascript Timer
проблема есть., Я не могу получить время, прошедшее после обратной передачи, чтобы таймер продолжал тикать. не могли бы вы мне помочь, пожалуйста,.?? Я бы очень признателен,
вот мой фрагмент кода:.
asp.net VB codebehid
on page load{
If Page.IsPostBack = True Then
ClientScript.RegisterClientScriptBlock(Me.GetType, "timer_script",
"<script language='javascript'>function mySubmit()</script>")
ClientScript.RegisterStartupScript(Me.GetType, "timer_script",
"<script>countdown_clock();</script>")
End If
If Page.IsPostBack = false Then
TimerTxtbx.Text = "00:06:10" 'hour:min:sec -> initialize timer
ClientScript.RegisterClientScriptBlock(Me.GetType, "timer_script",
"<script language='javascript'>function mySubmit()</script>")
ClientScript.RegisterStartupScript(Me.GetType, "timer_script",
"<script>countdown_clock();</script>")
End If
}
on button click{
NextBtn.Attributes.Add("onclick", "mySubmit()") 'call a javascript function
ClientScript.RegisterStartupScript(Me.GetType, "timer_script",
"<script>countdown_clock();</script>")
}
Javascript код:
function mySubmit()
{
document.getElementById('TimerTxtbx').removeAttribute('disabled');
}
function countdown_clock()
{
var current_time;
current_time = document.getElementById('TimerTxtbx').value;
var hours = current_time.substring(0,2);
var minutes = current_time.substring(3,5);
var seconds = current_time.substring(6,8);
var n_seconds;
var n_minutes = minutes;
var n_hours = hours;
if (seconds == 0)
{
n_seconds = 59;
if (minutes == 0)
{
n_minutes = 59;
if (hours == 0){
alert('Time is up');
return;
}
else{
n_hours = hours - 1;
if (n_hours < 10)
n_hours = "0" + n_hours;
}
}
else
{
n_minutes = minutes - 1;
if (n_minutes < 10)
n_minutes = "0" + n_minutes;
}
}
else
{
n_seconds = seconds - 1;
if (n_seconds < 10)
n_seconds = "0" + n_seconds;
}
document.getElementById('TimerTxtbx').value = n_hours + ':' + n_minutes + ':' + n_seconds;
setTimeout("countdown_clock()",1000); //function call and delay by 1sec
document.getElementById('TimerTxtbx').setAttribute('disabled','disabled');
}//end function
Что именно проблема у вас возникли, как это поддержание постоянной времени над постбэков? Код, который вы там установили, для меня загружает начальную загрузку страницы, а не обратно. –
да ,! это на самом деле проблема. Я не могу получить время, прошедшее после обратной передачи. не могли бы вы мне помочь.,? – 2009-02-28 16:49:35
извините, если я не уточнил это в первый раз, когда я разместил свой код. ваш алгоритм и мой одинаковы (^ _ ^). вы можете снова взглянуть на мой пост. Я редактировал (^ _ ^) ,. – 2009-02-28 17:03:29