[GastForen Programmierung/Entwicklung JavaScript date-Validierung

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

date-Validierung

troll_13
Beiträge gesamt: 39

1. Feb 2019, 15:58
Beitrag # 1 von 2
Bewertung:
(2763 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen. Kann mir jemand weiterhelfen?
Wie genau muss ich das Datum eingeben, damit es gemäss dieser Validierung durchkommt?
23.03.2012 funktioniert nicht und ich verstehe nicht warum - allerdings ist mir dieser Code auch zu komplex.
Danke für eure Hilfe!

Code
'date': { 
validation: function(value, options) {
var formatRegExp = /^([mdy]+)[\.\-\/\\\s]+([mdy]+)[\.\-\/\\\s]+([mdy]+)$/i;
var valueRegExp = this.dateValidationPattern;
var formatGroups = options.format.match(formatRegExp);
var valueGroups = value.match(valueRegExp);
if (formatGroups !== null && valueGroups !== null) {
var dayIndex = -1;
var monthIndex = -1;
var yearIndex = -1;
for (var i=1; i<formatGroups.length; i++) {
switch (formatGroups[i].toLowerCase()) {
case "dd":
dayIndex = i;
break;
case "mm":
monthIndex = i;
break;
case "yy":
case "yyyy":
yearIndex = i;
break;
}
}
if (dayIndex != -1 && monthIndex != -1 && yearIndex != -1) {
var maxDay = -1;
var theDay = parseInt(valueGroups[dayIndex], 10);
var theMonth = parseInt(valueGroups[monthIndex], 10);
var theYear = parseInt(valueGroups[yearIndex], 10);

// Check month value to be between 1..12
if (theMonth < 1 || theMonth > 12) {
return false;
}

// Calculate the maxDay according to the current month
switch (theMonth) {
case 1: // January
case 3: // March
case 5: // May
case 7: // July
case 8: // August
case 10: // October
case 12: // December
maxDay = 31;
break;
case 4: // April
case 6: // June
case 9: // September
case 11: // November
maxDay = 30;
break;
case 2: // February
if ((parseInt(theYear/4, 10) * 4 == theYear) && (theYear % 100 != 0 || theYear % 400 == 0)) {
maxDay = 29;
} else {
maxDay = 28;
}
break;
}

// Check day value to be between 1..maxDay
if (theDay < 1 || theDay > maxDay) {
return false;
}

// If successfull we'll return the date object
return (new Date(theYear, theMonth - 1, theDay)); //JavaScript requires a month between 0 and 11
}
} else {
return false;
}
}
},

X

date-Validierung

crisies
  
Beiträge gesamt: 110

4. Apr 2019, 20:25
Beitrag # 2 von 2
Beitrag ID: #569644
Bewertung:
(976 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi

Diese Funktion erwartet als 2ter Parameter einen Schlüssel format und dort müsste man angeben, wie das Datum daher kommt (sprich das eigentliche format ala dd.mm.yyyy etc.)

Der übergebene Datums-String wird dann via this.dateValidationPattern gegengecheckt und dafür sehe ich hier leider keinen Wert.

Ich nehme an dieses Script wurde von irgendwo her kopiert und nun müsste man halt dort mal in der Doku schauen, wie es genau implementiert wird. Dann würde man auch sehen, wie der Regex für das Datum im generellen gesetzt ist...

lg
chris.w.

*************************************
Chris Würsch
http://www.chriswuersch.com
*************************************


als Antwort auf: [#568766]

Aktuell

Veranstaltungen

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen. pdf-icon Hier eine kleine Anleitung.

Veranstaltungen
03.06.2019

Nürnberg
Montag, 03. Juni 2019, 09.30 Uhr

Schulung, Seminar

Freisteller zählen seit den Anfangsjahren der elektronischen Bildbearbeitung zu den wichtigsten EBV-Techniken. Im Lauf der Jahre haben sich verschiedene Techniken entwickelt, und auch Photoshop hat mit zahlreichen Freistell-Werkzeugen die Arbeit mit Freistellern vereinfacht. In diesem Seminar lernen Sie die wichtigsten Freistell- und Maskierungstechniken kennen, um Ihre Bilddaten schnell und effizient freizustellen.

Ja

Organisator: Cleverprinting.de

https://www.cleverprinting.de/schulung-freistellen-tipps-und-tricks/

Freistellen – die besten Strategien, Tipps, Tricks
Veranstaltungen
03.06.2019 - 04.06.2019

Düsseldorf
Montag, 03. Juni 2019, 09.30 Uhr - Dienstag, 04. Juni 2019, 17.30 Uhr

Schulung, Seminar

Unsere Schulung „Zweitägige Weiterbildung zum Cleverprinting-Reinzeichner“ bietet allen Anwendern, die in Agenturen oder freiberuflich als Reinzeichner bzw. in der Reinzeichnung arbeiten, topaktuelles Grafik- und PrePress-Fachwissen rund um das Thema „Druckdatenerstellung mit InDesign, Photoshop, Acrobat“.

Ja

Organisator: Cleverprinting.de

https://www.cleverprinting.de/zweitaegige-weiterbildung-zum-cleverprinting-reinzeichner/

Zweitägige Weiterbildung zum Cleverprinting-Reinzeichner
Hier Klicken