Ich habe ein HTML-Formular mit einigen Eingabefeldern, eines der Eingabefeld ist Suchfeld, wenn ich auf die Suchschaltfläche neben diesem Suchfeld klicken, Suchergebnisse werden vom Server mit Ajax zurückgegeben werden, was ich will ist, um die Übermittlung von Formularen zu verhindern, wenn der Benutzer sich auf dieses spezielle Sucheingabefeld konzentriert und die Eingabetaste drückt. Übrigens, ich benutze AngularJS, also könnte die Lösung ein bisschen anders sein als JQuery oder pures Javascript, wie ich finde .. Do-inable? Jeder Rat würde geschätzt werden!HTML-Formular zu verhindern, senden, wenn drücken Sie auf bestimmte Eingabe eingeben
5
A
Antwort
2
In der Schaltfläche Click-Handler tun ein e.preventDefault()
function clickHandler(e){
e.preventDefault();
}
Sie auch eine button
anstelle eines Submit-Button verwenden können.
3
Verwenden Sie eine Funktion wie:
function doNothing() {
var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
if(keyCode == 13) {
\t if(!e) var e = window.event;
\t e.cancelBubble = true;
\t e.returnValue = false;
\t if (e.stopPropagation) {
\t \t e.stopPropagation();
\t \t e.preventDefault();
\t }
}
<form name="input" action="http://www.google.com" method="get">
<input type="text" onkeydown="doNothing()">
<br><br>
<input type="submit" value="Submit">
</form>
+0
yup, für angularJS, alles was ich tun muss, ist onKeyDown in ng-keydown zu ändern, direkt auf! Vielen Dank! – dulan
0
When you submit form using enter key on particular text fields or submit button(focus).
To prevent form submit twice, we can use both approach
1.
define var isEnterHitOnce=true globally which loaded at the time of form load
on keyPress Event or on submitForm()
if(event.keycode==13 && isEnterHitOnce){
isEnterHitOnce=false;
//Process your code. Sent request to server like submitForm();
}
isEnterHitOnce=false;
2.
disable the field object from where you received the action like
beginning of method in formSubmit()
document.getElementById(objName).disabled=true; // objName would be your fields name like submitButton or userName
//At the end of method or execution completed enable the field
document.getElementById(objName).disabled=false;
Verwandte Themen
- 1. HTML-Formular einige "Aktion", wenn Sie auf Senden Schaltfläche drücken
- 2. Bestimmte Nummer in HTML-Eingabe verhindern?
- 3. Bootstrap-Formular-Eingabe: Senden verhindern, aber Eingabe überprüfen
- 4. Fokus auf nächstes Feld beim Drücken React.js eingeben
- 5. select2 mehrere verhindert, dass andere Eingabe von Formular auf eingeben
- 6. ganze Aktivität drücken, wenn Start der Eingabe auf EditText
- 7. wie verhindern senden auf drücken Sie in twitter bootstrap typeahead plugin
- 8. Catch eingeben drücken in Flash-Block auf der Webseite
- 9. Javascript drücken Tastencode "+1 eingeben" und "-1 eingeben"
- 10. Angular.js - Formular übergibt, wenn ich die Eingabe false eingeben
- 11. Eingabe in eine interaktive Befehlszeilenanwendung eingeben
- 12. So verhindern Sie das Senden mehrerer Formulare beim Klicken auf die Schaltfläche "Eingabe" in der Formularvalidierung
- 13. Javascript: Blockform auf Enter-Taste drücken Sie senden
- 14. eckig js auf eingabe verhindern einreichen
- 15. erkennen Sie das Submit-Ereignis, wenn Sie die Eingabetaste drücken
- 16. Formular validieren und Eingabe verhindern
- 17. validieren und senden Formular, wenn Eingabe in Eingabe (Textbox) Feld gedrückt wird, aber keine Geschichte wählen, wenn gedrückt
- 18. Eine Zeichenfolge an eine bestimmte Nummer senden
- 19. Eingabe funktioniert nur nach Drücken von Enter?
- 20. Zugriff auf VBA - doppelte Eingabe verhindern
- 21. Verhindern Sie, dass Benutzer das Formular durch Drücken von Enter # 2 senden
- 22. DataGridviewCell verhindern nicht numerische Eingabe
- 23. Übertragen Sie den Cursor zu JTextField, wenn Sie JButton drücken
- 24. Verhindern Scroll-Ereignis ausgelöst, wenn Inhalt oben drücken
- 25. Android zeigen Eingabe-Tastatur nur, wenn Benutzer eine Taste drücken
- 26. Verhindern Sie, dass Benutzer das Skript in Wordpress-Post eingeben
- 27. Füllen Eingabe vom Typ Text und drücken Sie senden Python mit
- 28. Javascript verhindern Formular senden, wenn über Limit
- 29. Jquery Trigger klicken, dann Eingabe eingeben
- 30. So verhindern Sie, dass onbeforeunload aufgerufen wird, wenn Sie auf Senden klicken
Enthält diese alle Beiträge nicht verhindern? Ist es möglich, die Übermittlung von Formularen nur dann zu verhindern, wenn sich der Benutzer auf dieses Eingabefeld konzentriert und nicht auf die anderen? Übrigens benutze ich angularJS, wo sollte ich diesen Code einfügen? – dulan
Vielleicht funktioniert es, es einfach im Tastendruck-Ereignis für dieses Eingabefeld zu tun – TGH
Sie haben Recht, ich habe es nicht durchdacht, danke! – dulan