• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Funcja nie reageuje na wciśnięcie klawisza enter

Aruba Cloud PRO i VPS, Openstack, VMWare, MS Hyper-V
0 głosów
83 wizyt
pytanie zadane 17 września w JavaScript przez Piotrek2713 Gaduła (3,570 p.)

Pisze krótki kod, który ma za zadanie oczekiwać na zdarzenie klawiatury (Naciśnięcie klawisza enter) oraz wywołanie funkcji

<!DOCTYPE html>
<html lang="pl">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <input type="text" name="" id="text" value="">
    <script src="main.js">
    </script>
</body>
</html>
const p = document.querySelector('#demo');
const input = document.querySelector('#text');
let inputValue = 'Wartość';
input.addEventListener('keydown', e =>{
    if(e.keycode === 13)
    {
        input.value = inputValue;
        console.log(e.keycode);
    }
});
        inputValue = input.value;

W ten sposób też próbowałem

2 odpowiedzi

+1 głos
odpowiedź 17 września przez Visual Studio Kot Bywalec (2,030 p.)
wybrane 17 września przez Piotrek2713
 
Najlepsza

Masz

e.keycode

zamiast

e.keyCode

poprawiony kod

const p = document.querySelector('#demo');
const input = document.querySelector('#text');
let inputValue = 'Wartość';

input.addEventListener('keydown', e => {
  if (e.keyCode === 13) { 
    input.value = inputValue;
    console.log(e.keyCode);
  }
});

 

komentarz 17 września przez Velta Maniak (51,270 p.)

BTW, właściwość keyCode jest zdeprecjonowana.

1
komentarz 17 września przez Visual Studio Kot Bywalec (2,030 p.)

Oczywiście, można też to zrobić tak

input.addEventListener('keydown', e => {
  if (e.key === "Enter") {
    // obsługa klawisza Enter
  }
});

lub tak 

input.addEventListener('keydown', e => {
  if (e.code === "Enter") {
    // obsługa klawisza Enter
  }
});
+2 głosów
odpowiedź 17 września przez adrian17 Ekspert (334,700 p.)

keycode -> keyCode?

BTW zamiast kodem liczbowym, można też prościej

if (e.key == "Enter") {

 

komentarz 17 września przez Comandeer Guru (594,220 p.)

Własność key jest wręcz zalecana obecnie, podczas gdy keyCode oficjalnie uznano za przestarzałą.

Podobne pytania

0 głosów
1 odpowiedź 458 wizyt
pytanie zadane 24 lutego 2018 w JavaScript przez Karol96 Nowicjusz (150 p.)
0 głosów
1 odpowiedź 428 wizyt
+1 głos
1 odpowiedź 322 wizyt
pytanie zadane 12 lipca 2019 w Systemy operacyjne, programy przez Bezy Bywalec (2,280 p.)

91,832 zapytań

140,508 odpowiedzi

317,004 komentarzy

61,163 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...