-
61. Data: 2009-01-06 11:42:33
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: Paweł Piskorz <n...@p...nie?>
Marek pisze:
>> Hm, u mnie działa z jednym polem tekstowym.
>
> To może chodzi o specyfikę mojego submita:
>
> <form action="" ...>
> <input type="submit" class="noDisplayButton" onClick="alert('jest ok');
> return false;">
> <input type="text"...>
>
> Gdy formularz ma 1 pole tekstowe to alert nie wyświetla się. Przy
> większej ilości wszystko jest OK.
Faktycznie, submituje się, ale alerta nie ma.
> Z pewnych wzgledów byłoby dla mnie
> kłopotliwe przeniesienie obsługi z onClick do onSubmit formularza.
Chociaż w Ff/O/S to (onclick) działa jak chcesz, to nie jestem pewien
czy jest to prawidłowe zachowanie, także nie wiem czy warto na tym polegać.
--
message[autor="PablO"]::after {
content:"Pozdrawiam";
}
-
62. Data: 2009-01-06 11:52:29
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: Artur Muszyński <a...@u...wytnijto.com.pl>
Paweł Piskorz pisze:
> Marek pisze:
>> No i kolejny problem.
>> W IE 7 <input type="submit" ... powoduje, że enter na dowolnym polu
>> formularza submituje go. Jednakże jest jeden warunek: formularz musi
>> mieć przynajmniej dwa pola tekstowe. Inne kontrolki nie mają znaczenia.
>> Gdy jest tylko jedno pole tekstowe i dowolna liczba radiobuttonów,
>> checkboxów i sesectów to enter na polu tekstowym nie zadziała.
>
> Hm, u mnie działa z jednym polem tekstowym.
Z tego co pamiętam, to submituje, ale w tym przypadku enter nie powoduje
kliknięcia przycisku.
artur
-
63. Data: 2009-01-06 12:24:08
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: "Marek" <m...@s...interia.pl>
> Faktycznie, submituje się, ale alerta nie ma.
Ok, poddałem się. Przerabiam na onSubmit. To działa bez sztuczek. Znów
robota :-(
-
64. Data: 2009-01-06 15:03:25
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: Maciej Łebkowski <m...@e...com>
Dnia 06-01-2009 o 12:25:09 Marek <m...@s...interia.pl> napisał(a):
>> Hm, u mnie działa z jednym polem tekstowym.
> To może chodzi o specyfikę mojego submita:
> <input type="submit" class="noDisplayButton" onClick="alert('jest ok');
> Gdy formularz ma 1 pole tekstowe to alert nie wyświetla się. Przy większej
> ilości wszystko jest OK.Z pewnych wzgledów byłoby dla mnie kłopotliwe
> przeniesienie obsługi z onClick do onSubmit formularza.
Dlaczego liczysz, że po *wciśnięciu klawisza* enter odpali się
funkcja przypisana do eventu kliknięcia, w dodatku na zupełnie
innym elemencie? :P
To nie jest "onDefaultBehaviourOfThisElementFired", ani
"onSomthingThatWouldHappendAfterClickingThisElementJ
ustOccured".
:)
--
Maciej Łebkowski
-
65. Data: 2009-01-06 17:59:20
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: "Marek" <m...@s...interia.pl>
> Dlaczego liczysz, że po *wciśnięciu klawisza* enter odpali się
> funkcja przypisana do eventu kliknięcia, w dodatku na zupełnie
> innym elemencie? :P
> To nie jest "onDefaultBehaviourOfThisElementFired", ani
> "onSomthingThatWouldHappendAfterClickingThisElementJ
ustOccured".
> :)
Szanowny Macieju :-)
Pozwól, że zacytuję Twoje słowa, których na pamięć się nauczyłem spędzając
noc na poprawkach do CMS'a:
>Nie baw się w protezy. Każdy formularz, zawierający przycisk wysyłający,
>zareaguje na wciśnięcie entera. Bez żadnych, wątpliwej jakości, JS-ów.
><input type="text"> <!-- klepnij enter w tym inpucie, to wyślesz
>formularz -->
><input style="display:none" type="submit">
Możnaby spytać również dlaczego onSubmit formularza jest uruchamiany po
wciśnięciu entera na jakimkolwiek polu kiedy za tą akcję ospowiedzialny jest
przycisk, na który w życiu nie klikniemy bo jest niewidoczny. :-)
(przypomnę, że musi być w IE widoczny aby zadziałał lecz poza ekranem
umieszczony aby uparcie trzymać go niewidocznym).
Jeżeli submit się odpala po wciśnięciu entera to nawet nie przyszło mi do
głowy, że nie ma to związku ze zdarzeniami związanymi za winowajcę tego
zdarzenia, czyli naszego inpuut'a. W FF i NN jest ścisły związek a w IE
tylko gdy ilość pól tekstowych>=2. Olałem to z góry na dół i korzystam z
onSubmit formularza, który zawsze jest wywoływany - niezależnie od
przeglądarki oraz ilości pól tekstowych.
-
66. Data: 2009-01-07 10:25:54
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: Maciej Łebkowski <m...@e...com>
Dnia 06-01-2009 o 18:59:20 Marek <m...@s...interia.pl> napisał(a):
>> Dlaczego liczysz, że po *wciśnięciu klawisza* enter odpali się
>> funkcja przypisana do eventu kliknięcia, w dodatku na zupełnie
>> innym elemencie? :P
>> To nie jest "onDefaultBehaviourOfThisElementFired", ani
>> "onSomthingThatWouldHappendAfterClickingThisElementJ
ustOccured".
>> :)
> Możnaby spytać również dlaczego onSubmit formularza jest uruchamiany po
> wciśnięciu entera na jakimkolwiek polu kiedy za tą akcję ospowiedzialny jest
> przycisk, na który w życiu nie klikniemy bo jest niewidoczny. :-)
Właśnie dlatego, że submit formularza mozna wykonać na wiele
sposóbów - w tym z klawiatury. Wcale nie jest przypisany do
klikania w guzik (choc taki guzik jest konieczny).
--
Maciej Łebkowski
-
67. Data: 2009-01-07 14:55:59
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: "Marek" <m...@s...interia.pl>
> Właśnie dlatego, że submit formularza mozna wykonać na wiele
> sposóbów - w tym z klawiatury. Wcale nie jest przypisany do
> klikania w guzik (choc taki guzik jest konieczny).
Ważne jest, że działa poprawka jak należy.
Choć w tym przypadku FF zaskoczył mnie odpalaniem zdarzenia onclick na
guziku, którego wcale nie klikam.
-
68. Data: 2009-01-07 15:15:27
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: Paweł Piskorz <n...@p...nie?>
Marek pisze:
> Choć w tym przypadku FF zaskoczył mnie odpalaniem zdarzenia onclick na
> guziku, którego wcale nie klikam.
Jakoś musi wysyłać ten formularz, a najlepszym i najpewniejszym sposobem
jest właśnie zasymulowanie kliknięcia submita.
--
message[autor="PablO"]::after {
content:"Pozdrawiam";
}
-
69. Data: 2009-01-07 21:52:30
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: "Marek" <m...@s...interia.pl>
> Jakoś musi wysyłać ten formularz, a najlepszym i najpewniejszym sposobem
> jest właśnie zasymulowanie kliknięcia submita.
IE robi to inaczej gdy masz tylko 1 pole tekstowe i inaczej gdy masz 2 lub
więcej. Full wypas! Możesz sobie regulować model zdarzeń :-D