Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [jQuery] - walidacja formularza, nie działa na Safari
kiciafu
post
Post #1





Grupa: Zarejestrowani
Postów: 52
Pomógł: 0
Dołączył: 11.05.2010

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


Witam,

mam pewien formularz, który jest sprawdzany przez Javascript, sprawdzałem we wszystkich przeglądarkach i działa za wyjątkiem Safari (przepuszcza bez walidacji). Gdzieś musi być błąd, który tolerują inne przeglądarki (nawet IE), szukam tego ręcznie ale nie mam pomysłu - Funkcja, która blokuje wysłanie formularza to takie coś
  1.  
  2. //Zatwierdzenie formularza //
  3. form.submit(function(){
  4. if(
  5. validateName1() &
  6. validateNazwisko() &
  7. validateUr1() &
  8. validateG1() &
  9. validateEmail() &
  10. validateKod1() &
  11. )
  12. return true
  13. else
  14. return false;
  15. });
  16.  
Szukałem błędów w funkcjach ale nie mogę się nic dopatrzeć, ktoś może miał problem z Safari na co w kwestii JS ta przeglądarka jest przewrażliwiona
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
nospor
post
Post #2





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




1) NIe & a &&
2) No to moze bys pokazal jeszcze kody funkcji walidujacych, nie sadzisz??
Go to the top of the page
+Quote Post
kiciafu
post
Post #3





Grupa: Zarejestrowani
Postów: 52
Pomógł: 0
Dołączył: 11.05.2010

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


(IMG:style_emoticons/default/smile.gif) Oczywiście

  1.  
  2. function validateName1(){
  3. //if it's NOT valid
  4. if(name1.val().length < 3){
  5. name1.addClass("error");
  6. name1Info.text("Imię musi mieć co najmniej 3 znaki!");
  7. name1Info.addClass("error");
  8. return false;
  9. }
  10. //if it's valid
  11. else{
  12. name1.removeClass("error");
  13. name1Info.text("OK");
  14. name1Info.removeClass("error");
  15. return true;
  16. }
  17. }
  18.  
  19. function validateNazwisko1(){
  20. //if it's NOT valid
  21. if(nazwisko1.val().length < 3){
  22. nazwisko1.addClass("error");
  23. nazwisko1Info.text("Nazwisko musi mieć przynajmniej 3 znaki!");
  24. nazwisko1Info.addClass("error");
  25. return false;
  26. }
  27. //if it's valid
  28. else{
  29. nazwisko1.removeClass("error");
  30. nazwisko1Info.text("OK");
  31. nazwisko1Info.removeClass("error");
  32. return true;
  33. }
  34. }
  35.  
  36. function validateUr1() {
  37. var a = $("#ur1").val();
  38. var filter = /^[0-9]{4}-[0-1]{1}[0-9]{1}-[0-3]{1}[0-9]{1}$/;
  39. //if valid
  40. if (filter.test(a)){
  41. ur1.removeClass("error");
  42. ur1Info.text("OK");
  43. ur1Info.removeClass("error");
  44. return true;
  45. }
  46. else{
  47. ur1.addClass("error");
  48. ur1Info.text("Błędna data, proszę poprawić np. 2012-01-01");
  49. ur1Info.addClass("error");
  50. return false;
  51. }
  52. }
  53.  
  54. function validateG1(){
  55. var a = $("#g1").val();
  56. var filter =/^[KM]$/;
  57. //if valid
  58. if (filter.test(a)){
  59. g1.removeClass("error");
  60. g1Info.text("OK");
  61. g1Info.removeClass("error");
  62. return true;
  63. }
  64. else{
  65. g1.addClass("error");
  66. g1Info.text("Proszę wprowadzić K lub M");
  67. g1Info.addClass("error");
  68. return false;
  69. }
  70. }
  71.  
  72. function validateEmail(){
  73. //testing regular expression
  74. var a = $("#email_os1").val();
  75. var filter = /^[a-z0-9_.-]+@[a-z0-9_.-]+..{2,4}$/;
  76. //if it's valid email
  77. if(filter.test(a)){
  78. email_os1.removeClass("error");
  79. email_os1Info.text("OK");
  80. email_os1Info.removeClass("error");
  81. return true;
  82. }
  83. //if it's NOT valid
  84. else{
  85. email_os1.addClass("error");
  86. email_os1Info.text("Proszę wprowadzić poprawny email");
  87. email_os1Info.addClass("error");
  88. return false;
  89. }
  90. }
  91.  
  92. function validateKod1(){
  93. var a = $("#kod_os1").val();
  94. var filter = /^[0-9]{2}-[0-9]{3}$/;
  95. //if it's valid email
  96. if(filter.test(a)){
  97. kod_os1.removeClass("error");
  98. kod_os1Info.text("OK");
  99. kod_os1Info.removeClass("error");
  100. return true;
  101. }
  102. //if it's NOT valid
  103. else{
  104. kod_os1.addClass("error");
  105. kod_os1Info.text("Proszę wprowadzić poprawny kod pocztowy");
  106. kod_os1Info.addClass("error");
  107. return false;
  108. }
  109. }
  110.  


te wyrażenia regularne to wiem że szału nie ma...

Ten post edytował kiciafu 30.08.2013, 09:32:41
Go to the top of the page
+Quote Post
nospor
post
Post #4





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




if(name1.val().length < 3){
A skad ty bierzesz takie zmiennej jak name1 i jej podobne? Nigdzie nie widze ich deklaracji. Nic dziwngo ze ci nie dziala
Go to the top of the page
+Quote Post
kiciafu
post
Post #5





Grupa: Zarejestrowani
Postów: 52
Pomógł: 0
Dołączył: 11.05.2010

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


Deklaracje zmiennych wyglądają tak:
  1. var name1 = $("#name1");
  2. var name1Info = $("#name1Info");


i tak dalej..natomiast to na bank jest jakaś literówka ;/ jak zmienne "położę" to nie działa nigdzie Cały kod piszę w Notepad++ jest coś co lepiej się do tego nadaje, albo jakiś walidator...
Go to the top of the page
+Quote Post
nospor
post
Post #6





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




Sprawdz co zwraca kazda z funckji a bedziesz wiedzial ktora daje ci zly wynik. Czy naprawde ciezko samemu na to wpasc? Bedziesz wiedzial ktora daje zly wynik, to beddzie wiadomo gdzie szukac
Go to the top of the page
+Quote Post
kiciafu
post
Post #7





Grupa: Zarejestrowani
Postów: 52
Pomógł: 0
Dołączył: 11.05.2010

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


Wielkie Dzięki... działa...wystarczyło w funkcji poprawić znaki &&, dziwne bo inne przeglądarki ten błąd ignorują (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
nospor
post
Post #8





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




Cytat
wystarczyło w funkcji poprawić znaki &&,
Pisalem ci o tym "3 dni" temu a ty dopiero to poprawiles?
Go to the top of the page
+Quote Post
kiciafu
post
Post #9





Grupa: Zarejestrowani
Postów: 52
Pomógł: 0
Dołączył: 11.05.2010

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


no tak wyszło (IMG:style_emoticons/default/tongue.gif) temat wyczerpany do zamknięcia
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: 22.12.2025 - 23:24