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
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.
Sie können das start_date einfach mit
eingeben %Vor%Sie brauchen nicht einmal das checkform () dann.
Danke
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.
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%Tags und Links javascript html ajax jsp