Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [jquery js] problem z preventDefault, event a e
martex
post 10.01.2019, 22:08:39
Post #1





Grupa: Zarejestrowani
Postów: 133
Pomógł: 4
Dołączył: 7.11.2012
Skąd: Połaniec

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


  1. $( '#submit' ).click( function () {
  2.  
  3. event.preventDefault();
  4. $.ajax( {
  5. url: "send.php",
  6. data: {
  7. 'name': $( '#name' ).val(),
  8. 'email': $( '#email' ).val(),
  9. 'phone': $( '#phone' ).val(),
  10. 'message': $( '#message' ).val()
  11. },
  12. type: 'POST',
  13. success: function ( ) {
  14. $( '.send-message' ).html( 'Wyslano' );
  15. $( '#name' ).val();
  16. $( '#email' ).val();
  17. $( '#phone' ).val();
  18. $( '#message' ).val();
  19. },
  20. error: function ( ) {
  21. $( '.send-message' ).html( 'error' );
  22. }
  23. });
  24. });


TO działa i ładnie nie przeskakuje do kolejnego okienka ale można wysyłać puste wiadomości nie działa required html'owy a taka walidacja mi wystarczy za to poniżej działa walidacja htmlkowa ale przeskakuje do send.php
  1. $('submit').on('click', function (e) {
  2.  
  3. e.preventDefault();
  4. $.ajax( {
  5. url: "send.php",
  6. data: {
  7. 'name': $( '#name' ).val(),
  8. 'email': $( '#email' ).val(),
  9. 'phone': $( '#phone' ).val(),
  10. 'message': $( '#message' ).val()
  11. },
  12. type: 'POST',
  13. success: function ( ) {
  14. $( '.send-message' ).html( 'Wyslano' );
  15. $( '#name' ).val();
  16. $( '#email' ).val();
  17. $( '#phone' ).val();
  18. $( '#message' ).val();
  19. },
  20. error: function ( ) {
  21. $( '.send-message' ).html( 'error' );
  22. }
  23. });
  24. });
Go to the top of the page
+Quote Post
trueblue
post 10.01.2019, 22:31:10
Post #2





Grupa: Zarejestrowani
Postów: 5 290
Pomógł: 1455
Dołączył: 11.03.2014

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


A wiesz dlaczego w drugim przypadku działa walidacja? Bo nie podpiąłeś kodu do żadnego elementu (nie ma tagu <submit>).
Powinieneś obsłużyć zdarzenie onsubmit formularza, a nie onclick przycisku, bo obecnie najzwyczajniej nie dochodzi do zatwierdzenia formularza, a co za tym idzie do jego wcześniejszej walidacji.
Go to the top of the page
+Quote Post
martex
post 10.01.2019, 23:47:58
Post #3





Grupa: Zarejestrowani
Postów: 133
Pomógł: 4
Dołączył: 7.11.2012
Skąd: Połaniec

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


hmmm faktycznie
$('form').on('submit', function (e) .....
zadziałało
dzieki
wink.gif
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 Wersja Lo-Fi Aktualny czas: 20.01.2019 - 12:37