grizz: Aktivierung eines Buttons, wenn alle Felder ausgefüllt

Auf meiner Page habe ich ein kleines Formular, verteilt auf mehere Seiten, was ohne Probleme auch funktioniert. Leider hat es einen Schönheitsfehler...
Ich möchte, dass der "Weiter"-Button erst in dem Moment aktiviert wird, wenn alle Felder ausgefüllt sind. Das alleine wäre ja einfach, wenn das Formular nicht in einer PHP-Datei wäre und folgedessen das Formular nicht dynamisch wäre. Das heisst, je nachdem was der User eingibt, werden mehr oder weniger Felder angezeigt. Es ist also eine variable Anzahl von Feldern.
Wie kann ich also per JavaScript herausfinden, ob alle sichtbaren Felder tatsächlich ausgefüllt wurden und den Weiter-Button erst dann aktivieren lassen...? Hört sich kompliziert an, aber andererseits sind diese ekelhaften Fehlermeldungen, man habe ein Feld vergessen auszufüllen doch auch Dreck, oder?

  1. Wie kann ich also per JavaScript herausfinden, ob alle sichtbaren Felder tatsächlich ausgefüllt wurden und den Weiter-Button erst dann aktivieren lassen...? Hört sich kompliziert an, aber andererseits sind diese ekelhaften Fehlermeldungen, man habe ein Feld vergessen auszufüllen doch auch Dreck, oder?

    Dazu musst du nach jeder Eingabe (z.b. mit onchange oder onblur) alle Felder durchlaufen und prüfen ob sie einen Wert haben). Dazu hilft wie meistens bei JS, selfhtml:
    http://de.selfhtml.org/javascript/objekte/elements.htm hier vor allem die eigenschaft 'type' beachten, da du wenn du nicht nur textfelder hast unterschiedliche Abfragen machen musst.

    Das http://home.arcor.de/struebig/computer/javascript/source/checkform.html ist ein Skript was in etwa das macht, aber ob du es so aufwendig brauchst weiss ich nicht.

    Um den Button zu de/aktivieren gibt es die Eigenschaft disabled = true/false

    Struppi.