eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.wwwenter w inpucie wysyla formularz › Re: enter w inpucie wysyla formularz
  • Data: 2010-10-17 11:21:00
    Temat: Re: enter w inpucie wysyla formularz
    Od: gienek <n...@c...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    Dnia Sat, 16 Oct 2010 19:06:48 +0200, Borys Pogoreło napisał(a):

    > Dnia Sat, 16 Oct 2010 09:16:08 +0000 (UTC), gienek napisał(a):
    >> Cała zabawa polega teraz na tym, żeby po kliknięciu entera skrypt nie
    >> próbował wysłać formularza tylko np. dal fokusa na nastepnego inputa.
    >> niestety ten kod (właściwie kawałek) tego nie robi.
    > Tak na szybko i z głowy pod jQuery:
    >
    > $("select").keypress(function(e){
    > if (e.which == 13) return false;
    > });

    > Ew. e.preventDefault();
    > Coś powinno zadziałać ;)

    Coś zadziałało, ale nie tak jakbym chciał. Niestety moja JS jest tak, że
    dokładnie nie wiem co zadziałało :>

    Jak już wspomniałem mam formularz
    <form onsubmit="sprawdz(this); return false;" ....

    w tym formularzu mam miedzy innymi pole z podpowiedzią i jak klikne myszą
    na podpowiedż jest ok jak wybiorę z klawiatury i dam enter keyCode == 13
    wówczas próbije wysłać mi od razu formularz, a to błąd. Próbowałem różne
    rzeczy m.in. return false, ale było to o kant dupy rozbić.
    Poniże kawałek kodu ze skryptu do pokazuwania/chowania podpowiedzi
    fragment odnosi się właśnie do zdarzenia wciśnięcia entera...

    else if (keyCode == 13) {document.getElementById("pole").value = wartosc;
    schowajliste(nr)}

    funkcja schowajliste ma ukryc podpowiedz...

    function schowajliste(nr) {
    try { document.getElementById("lista").style.display = "none"; }
    catch(e){} }

    czyni tak, ale poprawnie tylko jak klinie myszką, jak enter to wysyła
    forma.

    I teraz tak próbowałem z return false, próbowałem z preventDefault i
    wszystko kiszka dopiero alert pomógł :>

    function schowajliste(nr) {
    try {
    document.getElementById("lista").style.display = "none";
    document.getElementById("kolejnepole").focus();
    alert('Przerwałem :)');
    }
    catch(e){} }


    Moze mi ktoś po ludzku wytłumaczyć dlaczego tak jest ? :)

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: