Hallo Ludger.
Ich habe jetzt auch folgenden Code am Start:
if (thisForm[element].value.search(/[0-9]{4}-[0-9]{2}-[0-9]{2}/) == -1)
Das matcht auch auf 'ISBN 1234-56-78 (2004)'. Soll es doch aber nicht, oder?
Ich will also alle Zeichenketten erwischen, die _nicht_ dem Muster entsprechen. Zudem habe ich auf '^' und '$' verzichtet.
Das ist der Fehler. '^' innerhalb einer Zeichenklasse bedeutet Negieren dieser Klasse, in allen anderen Fällen bedeutet es, dass der dahinter folgende Ausdruck am Anfang des zu durchsuchenden Strings stehen muss. Statt [0-9] kannst du auch '\d' benutzen. Also so:
'/^\d{4}-\d{2}-\d{2}$/'
Die Verneinung hast du ja schon über die Abfrage des Ergebnisses der search-Methode (-1)realisiert.
Freundschaft!
Siechfred
--
Wissen bedeutet zu wissen, wo es steht.
Wissen bedeutet zu wissen, wo es steht.