| 

.NET C# Java Javascript Exception

0
Hallo,
ich will ein Formular erstellen und dieses soll durch javascript validiert werden...wie kann ich das Formular dazu bringen, dass es nur dann abgeschickt wird, wenn javascript aktiviert ist?? Das Problem ist ja sonst, das ich ein Formular abschicke, das nicht validiert ist...
15.09.2011
Gast
23 4
2 Antworten
1
Hallo,

du kannst anstatt dem Submit Button einen ganze normalen Button verwenden.
In dessen click event machst du dann die Validierung. Wenn alles ok ist dann rufst du die submit Methode von deinem Form auf.

Wenn JavaScript deaktiviert ist dann funktioniert der Button einfach nicht. D.h. es wird nicht submitted.
Somit können die Leute ohne JS aber deine Seite überhaupt nicht verwenden :)

Gruß
Michael
15.09.2011
michlG 1,7k 1 5
0
Ist es denn erstrebenswert, ein Formular nur dann absenden zu können, wenn Javascript aktiviert ist?

Folgender Gegenvorschlag:
<form method="post" action="..." onSubmit="return validate();">


Auf diese weise wird dein Formular, soweit Javascript vorhanden ist, damit validiert.

Falls es nicht vorhanden ist, wird es trotzdem gesendet, aber du kannst auf die Daten reagieren und dem User Feedback geben.
Wenn du die validierten Daten um die Information ergänzt, dass sie validiert sind,
kann der Server die Daten entgegennehmen, den validierten Daten vertrauen und auf nichtvalidierte Daten durch eine Fehlermeldung oder serverseitige Validierung reagieren.

cu
huckepick
16.09.2011
huckepick 887 2 8
2
EINSPRUCH!!
Der Server darf NIE NIE NIE den Daten trauen und ohne Validierung die weiterverarbeiten, egal ob die von JavaScript geprüft sind oder nicht. Es ist OK die Daten in der Form zu prüfen, ist benuzerfreundlicher und Du sparst Dir ein Roundtrip, aber es trotzdem Notwendig die Daten noch mal Serverseitig zu prüfen!!!
Jaksa 16.09.2011
Einspruch angenommen.
Aber es ging mir eigentlich nicht sonderlich um die Weiterverarbeitung der Daten. Die müssen natürlich noch geprüft werden.

Mein Punkt ist: Nutzern ohne Javascript das Absenden eines Formulars zu verweigern, kann nicht der richtige Weg sein. Deshalb zur not ohne Client-seitige Validierung abschicken und entsprechend Feedback geben, wenn man denn auf JS beharren will.

Irgendwelchen Daten bilnd zu vertrauen wollte ich damit nicht empfohlen haben - auch wenn's im Prinzip so dasteht.
huckepick 17.09.2011

Stelle deine Javascript-Frage jetzt!