Christian Seiler: Gültigkeitsprüfung!

Beitrag lesen

Hallo Markus,

Müßte schon gehen denn im 3. Fall kann er ja noch immer ein anderes Bundesland auswählen es ist nur eben Bayern ausgewählt wenn er einen bayrischen Bezirk angibt, oder?

Natürlich. Aber dann brauchst Du nicht automatisch das Bundesland zu wechseln, wenn Du einen anderen Bezirk auswählst. Wie ich gesagt habe: Eine der beiden Möglichkeiten muss weg.

Finde mich da leider nicht so ganz zurecht auf der Seite womit ich mein Problem lösen könnte..

http://www.xs4all.nl/~ppk/js/options.html

Wo ist Dein Problem genau?

Wie soll ich es mal angehen. Die anderen Überprüfungen hab ich alle schon ob was ausgefüllt ist und gültige Zeichen usw...

Nur da mangelt es leider an meinem Wissen..

Ein paar praktische Ansätze wären sehr hilfreich.

Prinzipiell: Du hast die Daten schon in einer Datenbank. Fangen wir mal mit den Postleitzahlen an: Du musst die Datenbanktabelle für JavaScript verfügbar machen. Da aber die Datenbank auf dem Server läuft und JavaScript auf dem Client, ist das erst einmal ein Problem. Du musst also JavaScript-Code auf dem Server erzeugen, der dann praktisch die Datenstruktur in JavaScript erzeugt. (klingt jetzt vielleicht doof...)

Der JavaScript-Zielcode könnte dan z.B. so aussehen:

var plz_tabelle = new Array ();
// hier beginnt der erzeugte Code
plz_tabelle['1010'] = 'Wien';
plz_tabelle['8020'] = 'Graz';
//...
plz_tabelle['4020'] = 'Linz';
// hier endet der erzeugte Code

Danach hast Du die Postleitzahltabelle für JavaScript verfügbar gemacht. Eventuell könntest Du die Tabelle ein einziges Mal erzeugen und dann in einer externen .js-Datei abspeichern, das spart Bandbreite.

So - nun hast Du nun Deine Überprüfungsfunktion. Diese holt sich die Informationen aus den Formularfeldern. Wenn jetzt in der Variable »plz« die Postleitzahl steht und in der Variable »ort« der Vort, dann kannst Du Übereinstimmungen ganz einfach überprüfen:

if (plz_tabelle[plz] == ort) {
  // stimmt
} else {
  // stimmt nicht
}

Natürlich könntest Du das ganze auch mit toUpperCase() kombinieren, so dass die Groß-/Kleinschreibung nicht beachtet wird.

Zum zweiten Problem sage ich erst mal nichts, bis ich weiß, was genau Du am Link, den ich gepostet habe, nicht verstanden hast.

Christian

--
Hast Du einen Beitrag? Nur her damit!
http://aktuell.de.selfhtml.org/tippstricks/beitrag.htm
SELF-Code: (http://emmanuel.dammerer.at/selfcode.html)
sh:) fo:) ch:] rl:( br:> n4:& ie:% mo:) va:) de:] zu:) fl:( js:| ss:) ls:[