Kuinka tätä HTML-lomaketta pitäisi muuttaa, että se antaisi viestin:
"Päätit syötteen ENTER-näppäimen painallukseen"
https://pastebin.com/eD9tySXh
Animaatio, tämän hetken toiminnasta: https://s7.gifyu.com/images/lomake.gif
Kuten huomaat, painikkeet käynnistävät niihin asetetun tapahtumakäsittelijän, mutta TEXT-kenttään annettu enter nollaa lomakkeen, ja se tulisi saada myös suorittamaan sille annettu tehtävänsä.
Huomaa että voit poistaa toisen tyylitiedostoon viittaavan rivin, eli jos sinulla on w3.css tiedosto paikallisesti, poista verkosta noutava rivi, ja jos sinulla ei ole tiedostoa paikallisesti poista tai aseta REM-riviksi, paikallisen tiedoston käyttö:
<!--
<link rel="stylesheet" href="./css/w3.css">
-->
"Päätit syötteen ENTER-näppäimen painallukseen"
https://pastebin.com/eD9tySXh
Animaatio, tämän hetken toiminnasta: https://s7.gifyu.com/images/lomake.gif
Kuten huomaat, painikkeet käynnistävät niihin asetetun tapahtumakäsittelijän, mutta TEXT-kenttään annettu enter nollaa lomakkeen, ja se tulisi saada myös suorittamaan sille annettu tehtävänsä.
Huomaa että voit poistaa toisen tyylitiedostoon viittaavan rivin, eli jos sinulla on w3.css tiedosto paikallisesti, poista verkosta noutava rivi, ja jos sinulla ei ole tiedostoa paikallisesti poista tai aseta REM-riviksi, paikallisen tiedoston käyttö:
<!--
<link rel="stylesheet" href="./css/w3.css">
-->
Vastaukset 2
Vanhimmat
Auttaisko ao. tapahtuman kuuntelija? Node tarkoittaa kyseessä olevaa elementtiä.
node.addEventListener("keydown", ({key}) => {
if (key === "Enter") {
event.preventDefault();
// loput stuffit
}
})
No tämä on yksi varma tapa saada aikaan tapahtuman käsittely "Enter" -painikkeelle. Joten toimiva muoto edellä olevasta olisi tässä tapauksessa se että lisätään johonkin kohtaan, vaikka sinne </body> tagin yläpuolelle seuraava JavaScript koodin pätkä:
<script>
var elements = document.getElementsByClassName("w3-input w3-border w3-light-grey w3-round w3-border-blue");
elements[0].addEventListener("keydown", ({key}) => {
if (key === "Enter") {
event.preventDefault();
alert('Päätit syötteen ENTER-näppäimen painallukseen');
}
})
</script>
Laitan koko HTML -lomakkeen kun pastebin on taas jaloillaan, tällä hetkellä reparoivat jotain, eikä lisäyksiä pääse tekemään.
Näin se sitten toimii:
https://s7.gifyu.com/images/lomake1.gif
Varmaan tähän löytyy muitakin ratkaisuja.