Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [ajax] sprawdzenie formularza za pomocą ajaxa
nieraczek
post
Post #1





Grupa: Zarejestrowani
Postów: 405
Pomógł: 6
Dołączył: 12.01.2007

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


Chcę zrobić sprawdzenie formularza za pomocą ajaxa, niestety w Internecie trudno coś znaleźć jesli chodzi o sprawdzenie formularza za pomocą ajaxa, a ja dopiero dziś zacząłem naukę ajaxa. Chciałbym zrobić (pomijając kwestie złego działania pod IE6) żeby gdy do pola tekstowego wpisze się "tak" to nic się nie pojawiało, a jak wpisze się coś innego to pojawiał się napis "Źle" bez klikania na przycisk "wyślij" - pomożecie mi ?
W JS zrobiłęm to tak:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>ajax</title>
  5.  
  6. <script type="text/javascript">
  7. function funkcja()
  8. {
  9. var bledy=1; //deklaracja zmiennej: 0-błędy są; 1-brak błędów
  10.  
  11. if(document.form1.tekst.value!="tak")
  12. {
  13. document.getElementById("etykieta").innerHTML="Źle";
  14. bledy=0;
  15. }
  16.  
  17. if (bledy==0) return false; //zwróć "false" a tym samym nie wysyłaj formularza
  18. else return true; //zwróć "true" a tym samym wyślij formularz
  19. }
  20.  
  21. </head>
  22.  
  23. Czy kot to zwierzę? <br/>
  24.  
  25. <form name="form1" method="POST">
  26. <input type="text" name="tekst"/> <br/>
  27. <input type="submit" value="Wyślij" id="wyslij" onclick="return funkcja();"/>
  28. </form>
  29.  
  30.  
  31. <label id="etykieta"></label><br />
  32. </body>
  33. </html>


Ale nie wiem jak to zrobić tak fajnie w ajaxie żeby bez klikania na button wyślij to się sprawdzało, napisałem standardową formułkę, ale nie wiem jak to dostosować do tego co chcę osiągnąć, doradzcie cos prosze sad.gif
  1. var ajaxreq=new XMLHttpRequest();
  2.  
  3. ajaxreq.onreadystatechange=ajaxResponse;
  4.  
  5. ajaxreq.open("GET", filename);
  6.  
  7. ajaxreq.send(null);
  8.  
  9. function ajaxResponse()
  10. {
  11. if(ajaxreq.readyState==4) //jeśli ukończono żądanie
  12. {
  13. if (ajaxreq.status==200) //jesli żądanie się powiodło
  14. {
  15. alert ("OK");
  16. }
  17.  
  18. else alert("Błąd");
  19. }
  20. }
Go to the top of the page
+Quote Post
Daimos
post
Post #2





Grupa: Zarejestrowani
Postów: 1 319
Pomógł: 118
Dołączył: 26.11.2003
Skąd: Lublin

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


Ajax to przeciez javascript
dobrze robiles, tylko zamiast wywolywac funkcje w przycisku, mozesz bezposrednio w polu input np. tak:
  1. <input type="text" onkeypress="return funkcja()">


--------------------
scriptun.com. Startup z poradnikami do gier ttp.zone i ttpzone.pl
Go to the top of the page
+Quote Post
skowron-line
post
Post #3





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


uzywasz Ajaxa do sprawdzania czy pole jest wypelnione troche, to jak wylewac wiadro wody na palaca sie zapalke
zwykly JS to zrobi, chyba ze sprawdzasz w bazie ale tego nie zauwazylem


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 20.08.2025 - 00:06