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?
Sie können asp.net Textbox-Steuerelement anstelle von HTML-Textfeld verwenden –