-
1. Data: 2009-01-02 15:06:01
Temat: JS - jak zrobić poprawnie submit formularza pod FF?
Od: "Marek" <m...@s...interia.pl>
Witam,
Chciałbym aby po wypełnieniu pola tekstowego i przyciśnięciu entera
submitował mi się formularz. Problem w tym, że to nie chce działać pod FF.
Otóż jeżeli skrypt reaguje na onkeypress to pod FF nie będzie to działało w
przypadku gdy wpiszemy fragment tekstu a resztę wybierzemy z listy
podpowiedzi (historia wpisywanych tekstów, pamięć formularza) + enter. Wtedy
submitowany jest tylko ten wpisany fragment. Po drugie wybór pozycji z listy
nie powinien być submitowaniem bo być może użytkownik będzie chciał wypełnić
jeszcze inne pola.
Pod IE działa to poprawnie. Enter na pozycji listy = wypełnienie pola a
drugi enter odpala onkeypress.
--
Pozdrawiam,
Marek
-
2. Data: 2009-01-02 15:11:21
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: Paweł Piskorz <n...@p...nie?>
Marek pisze:
> Chciałbym aby po wypełnieniu pola tekstowego i przyciśnięciu entera
> submitował mi się formularz.
Wstaw submita to tak się będzie działo.
--
message[autor="PablO"]::after {
content:"Pozdrawiam";
}
-
3. Data: 2009-01-02 20:56:15
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: "Marek" <m...@s...interia.pl>
> Wstaw submita to tak się będzie działo.
Nie jest to prawdą.
<input ... onKeyPress="windows.forms[0].submit()"> nie działa właściwie w FF
zgodnie z tym co napisałem. Gdzie miałbym wstawić jeszcze tego submita?
-
4. Data: 2009-01-02 22:00:10
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: Maciej Łebkowski <m...@e...com>
Dnia 02-01-2009 o 21:56:15 Marek <m...@s...interia.pl> napisał(a):
>> Wstaw submita to tak się będzie działo.
> <input ... onKeyPress="windows.forms[0].submit()"> nie działa właściwie w FF
> zgodnie z tym co napisałem. Gdzie miałbym wstawić jeszcze tego submita?
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">
--
Maciej Łebkowski
-
5. Data: 2009-01-02 22:24:41
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: "Marek" <m...@s...interia.pl>
> <input style="display:none" type="submit">
Sprytne z tym stylem :-) Zmienię gdzie się da.
Problem jest wtedy gdy w niektórych przypadkach muszę modyfikować action
formularza przed submitem.
-
6. Data: 2009-01-02 22:27:05
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: Maciej Łebkowski <m...@e...com>
Dnia 02-01-2009 o 23:24:41 Marek <m...@s...interia.pl> napisał(a):
>> <input style="display:none" type="submit">
> Sprytne z tym stylem :-) Zmienię gdzie się da.
> Problem jest wtedy gdy w niektórych przypadkach muszę modyfikować action
> formularza przed submitem.
No ale to tak czy inaczej formularz.onsubmit trzeba użyć.
--
Maciej Łebkowski
-
7. Data: 2009-01-02 22:39:19
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: porneL <n...@p...net>
On Fri, 02 Jan 2009 20:56:15 -0000, Marek <m...@s...interia.pl> wrote:
>> Wstaw submita to tak się będzie działo.
>
> Nie jest to prawdą.
>
> <input ... onKeyPress="windows.forms[0].submit()"> nie działa
Spróbuj linux.forms[0].submit() ;)
--
this.author = new Geek("porneL");
-
8. Data: 2009-01-02 22:42:37
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: porneL <n...@p...net>
On Fri, 02 Jan 2009 22:24:41 -0000, Marek <m...@s...interia.pl> wrote:
>> <input style="display:none" type="submit">
>
> Sprytne z tym stylem :-) Zmienię gdzie się da.
> Problem jest wtedy gdy w niektórych przypadkach muszę modyfikować action
> formularza przed submitem.
Eleganciej jest takie rzeczy robić na serwerze, bez wspomagania się JSem. Na przykład
w PHP to bardzo proste:
if (!empty($_POST['foo'])) {include "foo.php";} else {include "bar.php";}
--
this.author = new Geek("porneL");
-
9. Data: 2009-01-02 22:44:28
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: "Marek" <m...@s...interia.pl>
> No ale to tak czy inaczej formularz.onsubmit trzeba użyć.
A może inaczej. Przedstawię Ci konkretny przypadek a może podpowiesz mi
lepsze rozwiązanie niż stosuję obecnie. Otóż mamy formularz z paroma polami.
Pod nim znajdują się 2 przyciski "zapisz nowy rekord" oraz "aktualizuj
wybrany". Poniżej jest tabela z rekordami z bazy danych. W stanie
inicjalnym dostępny jest tylko przycisk "zapisz nowy rekord". Naciśnięcie
przycisku wysyła formularz z action="?mode=addNew". Gdy wciśniemy enter na
jakimkolwiek polu tekstowym to również ta akcja ma się wykonać.
Natomiast w chwili gdy wybierzemy z tabeli niżej jakiś rekord do korekty, to
formularz wypełnia się danymi i oba przyciski stają się aktywne. Teraz
domyślnym przyciskiem jest "aktualizuj wybrany" i enter na jakimkolwiek polu
formularza generuje action="?mode=update". Jednakże w tym stanie ręczne
zastosowanie przycisku "zapisz nowy rekord" ustawi action="?mode=addNew"
przed submitem.
Sporadycznie w niektórych formularzach może dokleić się parę innych
elementów. Póki co możemy to pominąć jeśli nie da się w prosty sposób ich
uwzględnić.
-
10. Data: 2009-01-02 23:11:24
Temat: Re: JS - jak zrobić poprawnie submit formularza pod FF?
Od: "Marek" <m...@s...interia.pl>
> Eleganciej jest takie rzeczy robić na serwerze, bez wspomagania się JSem.
> Na przykład w PHP to bardzo proste:
Nie zawsze się da (chyba). Zobacz co odpisałem Maćkowi.