2016-05-02 13 views
0

Ich habe das folgende Skript, mit dem ich die Stundendifferenz zwischen zwei <input type="text"> nehmen und das Ergebnis in ein anderes Eingabefeld setzen kann.Mantain Werte beim Postback

function restarHoras1() { 
     inicio = document.getElementById("Start1").value; 
     fin = document.getElementById("End1").value; 
     inicioMinutos = parseInt(inicio.substr(3, 2)); 
     inicioHoras = parseInt(inicio.substr(0, 2)); 
     finMinutos = parseInt(fin.substr(3, 2)); 
     finHoras = parseInt(fin.substr(0, 2)); 
     transcurridoMinutos = finMinutos - inicioMinutos; 
     transcurridoHoras = finHoras - inicioHoras; 

     if (transcurridoMinutos < 0) { 
      transcurridoHoras--; 
      transcurridoMinutos = 60 + transcurridoMinutos; 
     } 
     if (transcurridoMinutos < 10) { 
      transcurridoMinutos = "0" + transcurridoMinutos; 
     } 
     if (transcurridoHoras < 0) { 
      transcurridoHoras = 24 + transcurridoHoras; 
     } 
     horas = transcurridoHoras.toString(); 
     minutos = transcurridoMinutos.toString(); 
     if (horas.length < 2) { 
      horas = "0" + horas; 
     } 
     if (minutos.length < 2) { 
      minutos = minutos + "0"; 
     } 
     document.getElementById("Duration1").value = horas + ":" + minutos; 
     if (fin.length != 5) { 
      document.getElementById("End1").style.backgroundColor = 'orangered'; 
      return; 
     } 
     if (fin.length = 5) { 
      document.getElementById("End1").style.backgroundColor = 'lightgreen'; 
      return; 
     } 
    } 

Es funktioniert alles in Ordnung, mit der Ausnahme, dass die Werte bei Postbacks gelöscht werden. Es sollte die Werte in <input> beibehalten. Wie kann ich das machen?

+0

Sie können asp.net Textbox-Steuerelement anstelle von HTML-Textfeld verwenden –

Antwort

0

Verwenden Sie einfach asp:TextBox statt einer traditionellen HTML-Eingabe. Also:

inicio = document.getElementById("<%= TextBox1.ClientID %>").value; 
    fin = document.getElementById("<%= TextBox2.ClientID %>").value; 
+0

Ja, Sie haben Recht. So einfach. Vielen Dank!! –