Überprüfen der Formularfeldwerte vor dem Senden dieser Seite

8

Ich habe folgende Funktion geschrieben, die prüft, ob das Feld start_date nicht leer ist und die richtige Nachricht anzeigt, wenn auf die Schaltfläche zum Senden geklickt wird. Aber dann nimmt es die Kontrolle auf die vorherige Seite. Der Benutzer muss also alle anderen Felder in diesem Formular erneut schreiben. Gibt es eine Möglichkeit, auf dieser Seite zu bleiben, auch nach der Aufforderung, die Fehlermeldung, mit allen anderen Feldern Wert.

%Vor%

Vielen Dank im Voraus

    
reva 19.07.2010, 08:57
quelle

4 Antworten

16

Solange Sie einen Rückgabewert in einem Checkformular haben, wird dieser Wert nirgends verwendet. Verwenden Sie stattdessen onclick="return checkform()" .

Vielleicht möchten Sie diese Methode stattdessen durch onsubmit="return checkform()" im Formular-Tag ersetzen, obwohl beide für das Klicken auf die Schaltfläche funktionieren.

    
user11977 19.07.2010, 09:11
quelle
5

Sie können das start_date einfach mit

eingeben %Vor%

Sie brauchen nicht einmal das checkform () dann.

Danke

    
Ujwal Ratra 29.06.2015 08:22
quelle
0

Ich weiß es nicht genau, aber es hört sich so an, als würde es noch reichen. I schnelle Lösung wäre, ändern Sie (Ihren Code hier raten):

%Vor%

zu einer Schaltfläche:

%Vor%

Auf diese Weise wird Ihr Formular immer noch gesendet (aus dem else Teil Ihres checkform ()) und es sollte die Seite nicht neu geladen werden.

Es gibt andere, vielleicht bessere Möglichkeiten, damit umzugehen, aber das funktioniert in der Zwischenzeit.

    
WSkid 19.07.2010 09:08
quelle
0

Verwenden Sie return vor dem Aufruf der Funktion, während Sie auf die Schaltfläche Senden, zwei Ereignisse (Formular senden, wie Sie Send-Taste und Funktionsaufruf für onclick) geschehen, passieren, um Formular-Posting zu verhindern müssen Sie falsch, haben Sie es getan Außerdem müssen Sie die Rückgabe angeben, dh, um einen Wert von der Funktion zu erwarten,

Dies ist ein Code:

%Vor%     
nikhil reddy 13.04.2013 13:25
quelle

Tags und Links