dj.drezyna Napisano Marzec 1, 2013 Zgłoś Share Napisano Marzec 1, 2013 Mam oto taki kod zamieszczony poniżej. I co mam zrobić by po wciśnięciu przycisku enter formularz nie wysyłał się tylko jak to jest w kodzie, ustawił pole value inputa na 'Wcisnąłem enter...'? Czyli żeby formularz był wysłany ale dopiero po kliknięciu w przycisk wyślij, albo po wciśnięciu entera ale jak nie jest zaznaczone pole inputa typu text. W załączonym przykładzie pokazuję też, że korzystam z zatrzymania propagacji oraz zachowania domyślnego i nie działa to tak jak powinno i jest opisane wyżej. Kod JS function zdarzenie() { var tekst = document.getElementById('tekst'); tekst.onkeyup = function(zda) { zda.stopPropagation(); zda.preventDefault(); if (zda.keyCode == 13) { tekst.value = 'Wcisnąłem enter...'; } }; } Kod HTML <body onload="zdarzenie();"> <form action="./?wyslano=tak" method="get"> <input type="text" name="tekst" id="tekst" /> <input type="submit" value="Wyślij" /> </form> </body> Galeria przyrodnicza http://fotokrajobrazy.warmia.pl Link do komentarza Udostępnij na innych stronach More sharing options...
dj.drezyna Napisano Marzec 1, 2013 Autor Zgłoś Share Napisano Marzec 1, 2013 Tak to już chyba jest, że dopóki nie napiszę posta na tym forum mózg nie wypracuje rozwiązania. W każdym razie trzeba to zrobić w następujący sposób: function zdarzenie() { var tekst = document.getElementById('tekst'); tekst.onkeydown = function(zda) {//zmieniamy z keyup na keydown //zda.stopPropagation();//niepotrzebne if (zda.keyCode == 13) { zda.preventDefault(); //przenosimy tu tekst.value = 'Wcisnąłem enter...'; } }; } Mam nadzieję, że komuś się przyda! Galeria przyrodnicza http://fotokrajobrazy.warmia.pl Link do komentarza Udostępnij na innych stronach More sharing options...
5corpio Napisano Marzec 1, 2013 Zgłoś Share Napisano Marzec 1, 2013 Zanim zauważyłem drugi post zacząłem się właśnie zastanawiać czemu to preventDefault() niby nie działa u ciebie Ot taka mini-strona moja po godzinach http://www.wnetrzekuchni.pl Link do komentarza Udostępnij na innych stronach More sharing options...
Polecane posty
Zarchiwizowany
Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.