• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[JQUERY] Input feld Manipulieren - Ergaenzen

montymotz

New member
Hallo,

bin neu hier und bräuchte mal ein wenig hilfe. Ich hab ein Input Formular welches ich mit Zeiten befülle und ein ein System schicke was wiederum eine zeitschaltung steuert.
In dem System werden die Zeiten aber leider nur so abgespeichert zb. 4:5 Uhr. So müsste es aber aussehen 04:05 Uhr. Ich kann das System leider nicht modifizieren. Mir werden also nur die Zeiten ausgeliefert. Und damit ich sehe was auf dem System für eine Zeit eingestellt habe muss ich das in den Input Felder anzeigen. Leider Optisch nicht ganz schön.

Wie bekomme ich es nun hin das ich bei Zeiten die < 10 sind eine 0 davor schreibe.

Beispiel: 4:7 -> 04:07

Probiere hier gerade rum:

https://jsfiddle.net/po5fswc5/

Danke für eventuelle hilfe bin leider noch JS anfänger.
 
HTML:
<!DOCTYPE html>

<html lang="en">
	<head>
		<meta charset="UTF-8" />
		<meta name="description" content=""/>
		<meta name="keywords" content=""/>
		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
		<title></title>
		
	</head>
<body>
	<input class="from-zeit" name="wert" value="4:7" on_hour_1":::="on_minute_1" :"="" data-timepicki-tim="14" data-timepicki-mini="49" type="text">		
		
<script>

var receivedTime =document.querySelector('.from-zeit').value;

function setTimeForm(tf)
{
var tsp = tf.split(':');
for(var i = 0; i<tsp.length;i++)
{
	if(tsp[i] < 10 ){tsp[i] = '0'+ tsp[i]; }
}
return tsp.join(':');
}
document.querySelector('.from-zeit').value = setTimeForm(receivedTime);

</script>
	</body>
</html>
 
Zuletzt bearbeitet von einem Moderator:
in ES2017 the loop can be simplified:

Code:
function setTimeForm(tf)
{
    return tf.split(':').map(function (str) {
        return str.padStart(2, '0');
    }).join(':');
}
 
Zurück
Oben