2017-05-25 9 views
0

Ich weiß, der Titel ist komisch, aber lassen Sie mich erklären, was ich versuche zu tun. Ich habe ein Login-Formular mit zwei Eingabefeldern ein Kontrollkästchen und einen Absenden-Button. Hier ist ein Screenshot: enter image description hereÜberholen Sie einen Link bei der Eingabe

Die Nutzungsbedingungen sind ein Popup, über das der Benutzer die Nutzungsbedingungen sehen kann. Mein Problem ist, dass, wenn ein Benutzer auf das Kontrollkästchen klickt und die Eingabetaste drückt, das Popup erneut angezeigt wird. Mein Wunsch ist, wenn der Benutzer das Kontrollkästchen anklickt und die Eingabetaste drückt, um zu seiner Homepage zu gelangen. Wie macht man das? Gibt es eine Möglichkeit zu überholen, um das Popup mit der Eingabetaste zu öffnen?

+0

wo ist Ihr Code? damit wir dir helfen können. – threeFatCat

Antwort

1

Sie würden das Ereignis keydown in Verbindung mit dem Kontrollkästchen verwenden und auf die EINGABETASTE testen.

document.querySelector("[type=checkbox]").addEventListener("keydown", function(evt){ 
 
    if(evt.keyCode === 13){ 
 
     console.log("you pressed ENTER"); 
 
     window.location = "http://cnn.com"; 
 
    } 
 
});
<input type=checkbox> Click me and then press ENTER

Beachten Sie, dass Code Client-Seite nicht sicher ist, und dies kann durch einen Benutzer umgangen werden. Der gesamte Sicherheitstypcode sollte auf einem Server passieren.

+0

ich benutze react.js und mein Eingabefeld ist dies: e.preventDefault()} /> Wissen Sie, wie Sie Ihren Code für meine Funktionalität anpassen – user7334203

+1

Sie haben Ihre Frage nicht mit React markiert oder geben Sie Ihren tatsächlichen Code (was Sie immer tun sollten, wenn Wenn Sie die erste Zeile meines Codes von 'querySelector (" [type = checkbox] ")' 'in' querySelector (". form-control [type = checkbox]") ändern '' und dann das 'onKeyDown 'entfernen 'Code komplett, es sollte funktionieren. –

+0

Sie haben absolut Recht. Vielen Dank für die Antwort – user7334203

Verwandte Themen