2017-01-26 1 views
0

Ich habe dieses Formular bei der Eingabe der Schlüssel im Feld "departments.name_text" eingereicht. Es sollte nicht! Ich komme nach onKeyUp wieder falsch ... irgendwelche Kommentare, warum das passiert?Warum wird dieses Formular gesendet, wenn in einem Feld die Eingabetaste gedrückt wird?

<form id="departments_form" method="POST" name="departments_form" action="app-forms.php"> 
    <input id="departments.name_text" placeholder="Department Name" onKeyUp="alert(event.keyCode); return false;"> 
    <select name="departments.name" id="departments.name" size="6" ondblclick="this.remove(this.selectedIndex);"> 
    </select> 
</form> 

Antwort

0

Setzen Sie die Return-Anweisung auf den folgenden Code.

Um Return-Anweisung zu fangen, müssen Sie Return ondblclick() setzen.

<select name="departments.name" id="departments.name" size="6" ondblclick="return this.remove(this.selectedIndex);"> 
    </select> 
0

In Ihrem Beispiel verwenden Sie onKeyUp. Der onKeyUp-Trigger, nachdem das Formular gesendet wurde. Damit können Sie die Übermittlungsaktion nicht durch onKeyUp blockieren.

Sie sollten onKeyPress anstelle von onKeyUp verwenden.

onkeypress="return event.keyCode != 13;" 

es jedoch in einigen Browser unterstützt nicht onKeyPress

Sie den Code jQuery verwenden können, die Form zu verhindern, indem

$(document).on("keypress", function(event) { 
    if (event.keyCode == 13) { 
     event.preventDefault(); 
    } 
}); 
+0

einreichen Ich bin mit jQuery nicht ... jede Lösung mit plain vanilla JS? –

Verwandte Themen