Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][JavaScript] obsługa 2 formularzy
Forum PHP.pl > Forum > Przedszkole
bubus_s
Witam po raz kolejny.

Mam stronę na niej są 2 takie formularze
Tylko rozmieszczone w różnych miejscach

  1. <tbody><tr>
  2. <td colspan="2" style="width: 400px; color: rgb(168, 0, 0); font-weight: bold;" class="desc">Aby otrzymać artykuł wypełnij poniższy formularz. </td>
  3. </tr>
  4. <tr>
  5. <td class="desc">Email: *</td>
  6.  
  7. <td>
  8. <input type="text" value="" name="email"/>
  9. </td>
  10. </tr>
  11. <tr>
  12. <td class="desc">Imię: *</td>
  13. <td>
  14. <input type="text" value="" name="name"/>
  15.  
  16. </td>
  17. </tr>
  18.  
  19. <tr>
  20. <td class="desc"> </td>
  21. <td>
  22. <input type="checkbox" name="agreementForPrivacy" value="1" class="left checkbox" id="agree" name="agree" />
  23. <span style="padding-bottom: 2px; color: rgb(168, 0, 0);" class="left block">
  24. Akceptuję <a href="http://tendernet.pl/regulamin">regulamin</a> i <a href="http://tendernet.pl/regulamin">politykę prywatności</a>
  25.  
  26. </span>
  27. </td>
  28. </tr>
  29.  
  30. <tr>
  31. <td style="text-align: right;" colspan="2">
  32. <input type="submit" onclick="return confirm('Sprawdź swoją skrzynkę e-mailową - znajdziesz tam nową wiadomość, w której znajdziesz link; musisz go kliknąć, aby potwierdzić chęć otrzymywania artykułu ode mnie.\n\nUwaga! E-maila z prośbą o potwierdzenie chęci otrzymania artykułu najprawdopodobniej trafi do SPAMu. ')" style="margin: 0px; padding: 0px;" value="Tak! Poproszę darmowy artykuł" name="addService" class="button_vlong button_vlong3 right" />
  33. </td>
  34. </tr>
  35. <tr>
  36.  
  37. <td colspan="2" style="width: 400px; font-size: 10px;" class="desc">(*) oznacza pola obowiązkowe</td>
  38. </tr>
  39. </tbody>


Skrypt Javy natomiast który służy za walidację tylko waliduje 1 formularz pierwszy a drugi natomiast nie jest walidowany.

Odpada zmienienie nazw w formularzu 2 aby skrypt walidował 2 formularze.
Więc trzeba zrobić coś w skrypcie javy.
Dlaczego nie mogę bo wtedy z formularza nie będzie wysyłane zapytanie do bazy.

Proszę o pomoc
askone
Cytat(bubus_s @ 18.08.2010, 13:52:08 ) *
Skrypt Javy natomiast który służy za walidację tylko waliduje 1 formularz pierwszy a drugi natomiast nie jest walidowany.


Rozumiem, iż masz na myśli javascript winksmiley.jpg

Czy obydwa formularze są identyczne? Czy mają takie same nazwy? Pokaż kod w całości, wpierw jednego, potem drugiego - ewentualnie wytnij środek.... No i nie zapomnij o funkcji javascript, którą chcesz walidować

Pozdrawiam
bubus_s
Formularze są takie same nazwy również poprostu skopiowane więc nie ma co pokazywać ich 2 razy.

Natomiast skrypt który waliduję wygląda następująco.

[JAVASCRIPT] pobierz, plaintext
  1. $(document).ready(function(){
  2. $("#rejestracja").validate({
  3. rules: {
  4.  
  5. name: {
  6. required: true,
  7. minlength: 0
  8. },
  9.  
  10.  
  11.  
  12. email: {
  13. required: true,
  14. email: true
  15. }
  16. },
  17. messages: {
  18.  
  19.  
  20.  
  21. name:{
  22. required: "Pole Imie nie może być puste",
  23. minlength: "Nie wpisaleś imienia"
  24. },
  25.  
  26. email:{
  27. required: "Wprowadź adres e-mail",
  28. email: "Wprowadź poprawny adres e-mail"
  29. }
  30. },
  31. success: function(label) {
  32. label.html("&nbsp;").addClass("sprawdzony");
  33. }
  34.  
  35. });
  36. });
[JAVASCRIPT] pobierz, plaintext


Tak przy okazji chcę jeszczę aby checkboxa walidowało.
piotrooo89
proszę o używanie poprawnego bbcode.

no dobrze a gdzie masz tag otwierający formularz? (<form>).
askone
Cytat
$("#rejestracja").validate({...})


Kod js nie waliduje obydwu ponieważ funkcja walidująca została przypisana tylko do formularza o id = "rejestracja". Jak dobrze wiadomo na stronie nie może być kilku elementów o takim samym id... Jeśli chcesz zastosowac tę samą funkcję to walidacji to zrób:

Kod
$("form").validate({...});

$("form.rejestracja").validate({...});

$("#rejestracja, #rejestracja2").validate({...});


Oczywiście wybierasz tylko jeden sposób winksmiley.jpg
bubus_s
Dziękuje. za pomoc skrypt działa.

Jeszcze małe pytanie z którym męczę się już jakieś 3-4 godziny.

Jak można zauważyć w formularzu jest checkbox

  1. <form id="rejestracja" action="http:adres" method="post">
  2.  
  3. <input type="hidden" name="account" value="4">
  4. <table class="stTable">
  5.  
  6.  
  7. <tbody><tr>
  8. <td colspan="2" style="width: 400px; color: rgb(168, 0, 0); font-weight: bold;" class="desc">Aby otrzymać artykuł wypełnij poniższy formularz. </td>
  9. </tr>
  10. <tr>
  11. <td class="desc">Email: *</td>
  12.  
  13. <td>
  14. <input type="text" value="" name="email"/>
  15. </td>
  16. </tr>
  17. <tr>
  18. <td class="desc">Imię: *</td>
  19. <td>
  20. <input type="text" value="" name="name"/>
  21.  
  22. </td>
  23. </tr>
  24.  
  25. <tr>
  26. <td class="desc"> </td>
  27. <td>
  28. <input type="checkbox" name="agreementForPrivacy" value="1" class="left checkbox" id="agree" name="agree" />
  29. <span style="padding-bottom: 2px; color: rgb(168, 0, 0);" class="left block">
  30. Akceptuję <a href="http:///regulamin">regulamin</a> i <a href="http:///regulamin">politykę prywatności</a>
  31.  
  32. </span>
  33. </td>
  34. </tr>
  35.  
  36. <tr>
  37. <td style="text-align: right;" colspan="2">
  38. <input type="submit" onclick="return confirm('Sprawdź swoją skrzynkę e-mailową - znajdziesz tam nową wiadomość, w której znajdziesz link; musisz go kliknąć, aby potwierdzić chęć otrzymywania artykułu ode mnie.\n\nUwaga! E-maila z prośbą o potwierdzenie chęci otrzymania artykułu najprawdopodobniej trafi do SPAMu. ')" style="margin: 0px; padding: 0px;" value="Tak! Poproszę darmowy artykuł" name="addService" class="button_vlong button_vlong3 right" />
  39. </td>
  40. </tr>
  41. <tr>
  42.  
  43. <td colspan="2" style="width: 400px; font-size: 10px;" class="desc">(*) oznacza pola obowiązkowe</td>
  44. </tr>
  45. </tbody>
  46. </form>


Chcę aby skrypt walidował również checkboxa.

Z Javascirpt mam doczynienia pierwszy raz. Na forum doradzili mi abym skorzystał z jakiegoś plugina to tak zrobiłem teraz jeszcze usiłuję dodać walidację checkboxa niestety bezskutecznie.
piotrooo89
może podasz nazwę pluginu, skąd go masz? ale wydaje mi się że http://jquery.bassistance.de/validate/, jeśli tak to zapoznaj się z tym przykładem: http://jquery.bassistance.de/validate/demo...elect-demo.html
bubus_s
Tak tak .
Zgadza się;]

Jedynie co znalazłem to:

[JAVASCRIPT] pobierz, plaintext
  1. <script type="text/javascript">
  2. // only for demo purposes
  3. $.validator.setDefaults({
  4. submitHandler: function() {
  5. alert("submitted!");
  6. }
  7. });
  8.  
  9. $.metadata.setType("attr", "validate");
  10.  
  11. $(document).ready(function() {
  12. $("#form1").validate();
  13. $("#selecttest").validate();
  14. });
  15. </script>
[JAVASCRIPT] pobierz, plaintext


Oraz
  1. <label for="agree">Please agree to our policy</label>
  2. <input type="checkbox" class="checkbox" id="agree" name="agree" validate="required:true" />
  3. <br/>
  4. <label for="agree" class="error block">Please agree to our policy!</label>


Tylko w swoim formularzu nie mam pól label.

Dla przypomienia formularz jest wyżej

Nie wiem co z tego wykombinować aby działało
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.