Muszę wykonać zdarzenie kliknięcia przycisku po naciśnięciu klawisza Enter.
Tak jak w tej chwili zdarzenie nie strzela.
Jeśli to możliwe, pomóż mi ze składnią.
$(document).on("click", "input[name='butAssignProd']", function () {
//all the action
});
to jest moja próba wywołania zdarzenia kliknięcia przy wejściu.
$("#txtSearchProdAssign").keydown(function (e) {
if (e.keyCode == 13) {
$('input[name = butAssignProd]').click();
}
});
jquery
key-events
Arianule
źródło
źródło
e.preventDefault();
e.keyCode
nie jest to całkowicie cross browser. użyje.which
zamiast tego.keyup
zamiastkeypress
lubkeydown
.keypress
/keydown
zdarzenia są wyzwalane w sposób ciągły, gdy klawisz jest wciśnięty: jsbin.com/uzoxuk/1/editOdpowiedzi:
wypróbuj to ....
Pokaż fragment kodu
Znajdź Demo w jsbin.com
źródło
Spróbuj tego
Mam nadzieję, że ci to pomoże
źródło
if((event.keyCode || event.which) == 13)
? tak, jest to w pełni cross-przeglądarka, która obsługujeTab
klucz w FF.event.keyCode
jest zbędny, wystarczy użyćevent.which
.Właśnie znalazłem również przesyłanie formularza na „Enter”, który kompleksowo obejmuje większość zagadnień.
źródło
Już prawie byłeś. Oto, czego możesz spróbować.
Kiedyś
trigger()
wykonywałem kliknięcie i wiązałem je zekeyup
zdarzeniem zkeydown
powoduclick
zdarzenie składa się z dwóch zdarzeń faktycznie tj .mousedown
Wtedymouseup
. Tak więc, aby przypominać rzeczy tak samo, jak to możliwe zkeydown
ikeyup
.Oto demo
źródło
Kolejny dodatek do wykonania:
Jeśli dynamicznie dodajesz dane wejściowe, na przykład używając
append()
, musisz użyćon()
funkcji jQuery .AKTUALIZACJA:
Jeszcze skuteczniejszym sposobem byłoby użycie instrukcji switch. Może się też okazać, że jest czystszy.
Narzut:
jQuery:
źródło
Czy próbujesz naśladować kliknięcie przycisku po naciśnięciu klawisza Enter? Jeśli tak, może być konieczne użycie rozszerzenia
trigger
składni.Spróbuj zmienić
do
Jeśli to nie jest problem, spróbuj ponownie przyjrzeć się składni przechwytywania klucza, patrząc na rozwiązania w tym poście: JQuery Event Keypress: Który klawisz został naciśnięty?
źródło
Spróbuj tego
źródło
Możesz użyć tego kodu
źródło
Wystarczy, że w kodzie umieścisz funkcję prevDefault (),
źródło
JQuery: Zdarzenie kliknięcia przycisku Fire Korzystanie z przycisku Enter Spróbuj tego ::
tabindex = "0" onkeypress = "return EnterEvent (zdarzenie)"
źródło
źródło
Wydaje się, że jest to teraz domyślne zachowanie, więc wystarczy:
Możesz spróbować w tym JSFiddle
Testowano na: Chrome 56.0 i Firefox (Dev Edition) 54.0a2, oba z jQuery 2.2.x i 3.x
źródło