Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JS] pytanie o alternatywe submit button
soska66
post
Post #1





Grupa: Zarejestrowani
Postów: 132
Pomógł: 1
Dołączył: 3.02.2005

Ostrzeżenie: (0%)
-----


mam taki kod

  1. <tr>
  2. <td class="righttext">Pass</td>
  3. <td><input class="formbits" type="password" name="passwd" size="12"></td>
  4. <td><img src="/images/go2.gif" alt="&gt;&gt;" width="18" height="15" border="0" onClick="memberLogin(document.sideloginform)"></td>
  5. </tr>


Jest to oczywiscie czesc formy, z tym ze jak widac wcisniecie przycisku nie wywoluje javascriptowej funkcji submit, a inna, stworzona na potrzeby strony funkcje. Problem polega na tym, ze w tej sytuacji, button nie reaguje na ENTER. Trzeba go kliknac

Pytanie, czy da sie to jakos obejsc. Zalezy mi na tym, zeby wcisniecie buttona wywolywalo funkcje memberLogin. Moze wstawic submit button z 'onclick' i podstawic obrazek w tlo (stylem) ?

Prosze o sugestie
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




wywal tego onclick, a funkcje dodaj na onsubmit w formi:
  1. <form onsubmit="memberLogin(document.sideloginform);">
  2. ....
  3. </form>


ta funkcja cos powiina zwracac, true lub false i powiino byc tak:
  1. <form onsubmit="return memberLogin(document.sideloginform);">
  2. ....
  3. </form>
Go to the top of the page
+Quote Post
soska66
post
Post #3





Grupa: Zarejestrowani
Postów: 132
Pomógł: 1
Dołączył: 3.02.2005

Ostrzeżenie: (0%)
-----


hmm

no nie wiem gdzie mam blad, nie reaguje wogole na ENTER

  1. <form name="sideloginform" id="sideloginform" action="/validate.php" method="post" onSubmit="memberLogin(document.sideloginform);">
  2. <table border="0" cellspacing="0" cellpadding="2" style="margin: 8px; font-size: 1em;">
  3. <tr>
  4. <td class="righttext">Email</td>
  5. <td><input class="formbits" type="text" name="email" size="12"></td>
  6. <td></td>
  7. </tr>
  8. <tr>
  9. <td class="righttext">Pass</td>
  10. <td><input class="formbits" type="password" name="passwd" size="12"></td>
  11. <td><img src="/images/go2.gif" alt="&gt;&gt;" width="18" height="15" border="0" onClick="document.sideloginform.submit();"></td>
  12. </tr>
  13. <tr>
  14. <td colspan="3">
  15. <a class="reg" href="java script:reminder(document.sideloginform)">Forgot Password?</a>
  16. <a class="reg" href="/?action=newprofile">Register</a>
  17. </td>
  18. </tr>
  19. </table>
  20. </form>
Go to the top of the page
+Quote Post
JaRoPHP
post
Post #4





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Formularz ma reagować na przycisk ENTER?
To potrzebujesz jednak pola <input type="submit"... />.

EDIT: A resztę napisał @nospor.

Ten post edytował JaRoPHP 1.12.2006, 13:12:12
Go to the top of the page
+Quote Post
soska66
post
Post #5





Grupa: Zarejestrowani
Postów: 132
Pomógł: 1
Dołączył: 3.02.2005

Ostrzeżenie: (0%)
-----


nie jest potrzebny... Jesli dodajesz onclick z wywolaniem funkcji document.submit powinien reagowac

ponizszy przyklad dziala (reaguje na enter) bez problemu

  1. <form method="post" action="/home.php" name="searchform" id="searchform">
  2. <input type="hidden" name="action" value="search">
  3. <table border="0" cellspacing="2" cellpadding="0" >
  4. <tr>
  5. <td><input class="formbits" type="text" name="terms" size="20"></td><td><img src="/images/go.gif" alt="&gt;&gt;" width="18" height="15" border="0" onClick="document.searchform.submit();"></td>
  6. </tr>
  7. </form>
Go to the top of the page
+Quote Post
JaRoPHP
post
Post #6





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Cytat(soska66 @ 1.12.2006, 13:17:31 ) *
nie jest potrzebny... Jesli dodajesz onclick z wywolaniem funkcji document.submit powinien reagowac

Racja, powinien reagować. Za wprowadzenie w błąd sorki...

Ten post edytował JaRoPHP 1.12.2006, 13:26:54
Go to the top of the page
+Quote Post
soska66
post
Post #7





Grupa: Zarejestrowani
Postów: 132
Pomógł: 1
Dołączył: 3.02.2005

Ostrzeżenie: (0%)
-----


no za cholere nie moge znalezc roznicy pomiedzy dzialaniem tych dwoch kodow co wkleilem. Drugi reaguje na eneter bez problemu. Pierwszy reaguje tylko na klikniecie, co swiadczy ze nie ma bledu w kodzie onclick
Go to the top of the page
+Quote Post
JaRoPHP
post
Post #8





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Aby formularz reagował na przycisk ENTER, to albo musi mieć <input type="sumbit" />, albo przycisk (ew. obrazek), w którym przypisujesz onclick="document.submit()".
Ten submit musi się gdzieś pojawić (w pierwszym przypadku u Ciebie @soska66 go nie było, dlatego nie było również reakcji na ENTER).

Ten post edytował JaRoPHP 1.12.2006, 13:48:05
Go to the top of the page
+Quote Post
soska66
post
Post #9





Grupa: Zarejestrowani
Postów: 132
Pomógł: 1
Dołączył: 3.02.2005

Ostrzeżenie: (0%)
-----


Jak to nie ma (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

  1. <td><img src="/images/go2.gif" alt="&gt;&gt;" width="18" height="15" border="0" onClick="document.sideloginform.submit();"></td>
Go to the top of the page
+Quote Post
JaRoPHP
post
Post #10





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Fragment pierwszego kodu:
  1. <td><img src="/images/go2.gif" alt=">>" width="18" height="15" border="0" onClick="memberLogin(document.sideloginform)"></td>

Fragment drugiego kodu:
  1. <td><img src="/images/go2.gif" alt=">>" width="18" height="15" border="0" onClick="document.sideloginform.submit();"></td>


Dopiero w drugim masz document.submit(), i ten reaguje na ENTER. W pierwszym nie ma submitu() (co widać na załączonym obrazku (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ), i nie ma reakcji.
Go to the top of the page
+Quote Post
soska66
post
Post #11





Grupa: Zarejestrowani
Postów: 132
Pomógł: 1
Dołączył: 3.02.2005

Ostrzeżenie: (0%)
-----


nie no zaraz.... czy ja gdzies napisalem ze ten drugi reaguje? Wlasnie nie, i w tym problem... Ten 'drugi' kod z submitem nie reaguje (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował soska66 1.12.2006, 14:15:04
Go to the top of the page
+Quote Post
JaRoPHP
post
Post #12





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Cytat(soska66 @ 1.12.2006, 13:36:05 ) *
no za cholere nie moge znalezc roznicy pomiedzy dzialaniem tych dwoch kodow co wkleilem. Drugi reaguje na eneter bez problemu.
Cytat
nie no zaraz.... czy ja gdzies napisalem ze ten drugi reaguje?

Poza tym, widzę różnicę pomiędzy wklejonymi kodami. Jeden ma tylko jedno pole typu text, drugi więcej. I ten, gdzie jest ich większa ilość, nie działa (pomimo, że ma document.submit()).
Proponuję umieścić przycisk submit w formularzu, natomiast do znacznika form dodać zdarzenie onSubmit(fun()).
Go to the top of the page
+Quote Post
soska66
post
Post #13





Grupa: Zarejestrowani
Postów: 132
Pomógł: 1
Dołączył: 3.02.2005

Ostrzeżenie: (0%)
-----


ten trzeci reaguje bez problemu bo to zupelnie inny kod (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) a ty porownales dwa te same, tylko ze jeden przed zmiana a drugi po
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.08.2025 - 07:29