Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][HTML]Drugi "button" nie działa
castagir
post
Post #1





Grupa: Zarejestrowani
Postów: 146
Pomógł: 3
Dołączył: 28.10.2014

Ostrzeżenie: (10%)
X----


Witam

Jestem zielony w JavaScript i niedawno skończyłem własny tok nauczania o tym języku.

Napotkałem taki problem:
Na jednej stronie html, robię formularz, który dzięki jquery wyświetla się w "krokach" - czyli, żeby przejść do następnej części, trzeba wypełnić prawidłowo najpierw pole formularza.
Niestety już na pierwszym kroku mam problem, bo pierwsza funkcja, która odpowiada za rozpoczęcie instalacji działa jak należy, natomiast druga już w ogóle nie rusza.

Oto kod java script:
  1. /* Załadowanie wszystkich funkcji i utworzenie zmiennych przechowujących informację o postępach instalacji */
  2. $(document).ready(function() {
  3. var postep;
  4. rozpocznijInstalacje();
  5. sprawdzKrok1();
  6. });
  7.  
  8. /* Funkcje niezbędne do przeprowadzenia dynamicznej instalacji ENDO */
  9. function rozpocznijInstalacje() {
  10. $('.rozpocznij').click(function() {
  11. var postep = 'krok1';
  12. $.ajax ({
  13. type :"POST",
  14. url :"instalator.php",
  15. data :{
  16. postep: postep
  17. },
  18. success: function(dane) {
  19. $('#pojemnikGlowny').html(dane);
  20. }
  21. });
  22. });
  23. }
  24. function sprawdzKrok1() {
  25. $('.sprawdzKrok1').click(function() {
  26. var wynikSprawdzenia;
  27. var wiadomosc = '<div class="wynikSprawdzenia">';
  28. var nazwaWitryny = $('textarea[name="nazwaWitryny"]').val();
  29. var opisWitryny = $('textarea[name="opisWitryny"]').val();
  30. var slowaKluczowe = $('textarea[name="slowaKluczowe"]').val();
  31. alert(nazwaWitryny);
  32. var prawidloweZnaki = /^([a-zA-Z_\.,])$/;
  33. if(!prawidloweZnaki.test(nazwaWitryny) || nazwaWitryny.val() == '') {
  34. nazwaWitrynyWynik = false;
  35. wiadomosc += '<p class="blad">Nazwa witryny jest nieprawidłowa!</p>';
  36. }
  37. else {
  38. nazwaWitrynyWynik = true;
  39. }
  40. if(!prawidloweZnaki.test(opisWitryny) || opisWitryny.val() == '') {
  41. opisWitrynyWynik = false;
  42. wiadomosc += '<p class="blad">Opis wistryny jest nieprawidłowy!</p>';
  43. }
  44. else {
  45. opisWitrynyWynik = true;
  46. }
  47. if(!prawidloweZnaki.test(slowaKluczowe) || slowaKluczowe.val() == '') {
  48. slowaKluczoweWynik = false;
  49. wiadomosc += '<p class="blad">Słowa kluczowe są nieprawidłowe!</p>';
  50. }
  51. else {
  52. slowaKluczoweWynik = true;
  53. }
  54.  
  55. if(nazwaWitrynyWynik == false || opisWitrynyWynik == false || slowaKluczoweWynik ==false) {
  56. wynikSprawdzenia = false;
  57. wiadomosc += '<p class="blad">Wypełnij pola jeszcze raz.</p></div>';
  58. $('#pojemnikGlowny').append(wiadomosc);
  59. }
  60. });
  61. }


Przycisk, który ma za zadanie wywołać tę funkcję to zwykły input:button.
Dodam jeszcze, że kod html formularza jest umieszczany dynamicznie poprzez wcześniejsze zapytanie do skryptu php, który odsyła całkowicie nowy fragment strony, tym samym usuwając poprzednią treść.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
blahy
post
Post #2





Grupa: Zarejestrowani
Postów: 82
Pomógł: 22
Dołączył: 20.07.2010

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


Co to znaczy dynamicznie dosyla? ajaxem?
.sprawdzKrok1 tez jest podmieniane?
zamiast $('.sprawdzKrok1').click(function() {
sprobuj $('body').on('click', '.sprawdzKrok1', function() {, albo odpal sobie ta funkcje jeszcze raz po podmienieniu contentu w success ajaxa.
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.08.2025 - 17:08