webForumDet fria alternativet

Kolla datum i en textruta

JavaScript

3 svar · 290 visningar · startad av skyman

Medlem sedan juli 20012 450 inlägg
Frågan#1

Hur gör jag för att kolla att användaren skriver i en textruta enligt modellen ÅÅÅÅ-MM-DD (datum) på ett snyggt sätt?

Och sen vill jag också kolla att användaren skriver i ett annat fält enligt modellen TT:MM (tid)...

Medlem sedan nov. 200013 890 inlägg
Medlem sedan juli 20012 450 inlägg
#3

Kanon!

<html>
<head>
<script language="javascript">
<!--
function checkDate(input){

	var pattern = /^(\d{4})-(\d{2})-(\d{2})$/;

	if(!pattern.test(input))
		return false;

	var year = parseInt(RegExp.$1),
	month = parseInt(RegExp.$2) - 1,
	date = parseInt(RegExp.$3);

	var toCheck = new Date();
	toCheck.setFullYear(year);
	toCheck.setMonth(month);
	toCheck.setDate(date);

	return toCheck.getFullYear() == year && toCheck.getMonth() == month && toCheck.getDate() == date;

}
function Check(){
if(!checkDate(document.form1.datum.value))
	alert("Du måste fylla i ett giltigt datum i formen ÅÅÅÅ-MM-DD i rutan \"födelsedatum\".");

}	
//-->
</script>
</head>
<body>
<form name="form1" action="" method="POST" onSubmit="javascript:Check();">

<input type="text" name="datum">
<input type="submit">

</form>
</body>
</html>
Medlem sedan juli 20012 450 inlägg
#4

Hur gör jag sedan för att kolla om det är rätt skrivet för tiden?

Jag vill ha en function som heter checkTime()...
Det är just det där toCheck.set... som jag inte vet hur man då ska göra...

268 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
139 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)