Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> JQUERY nie wykonuje funkcji na hiperlaczach
lexis72
post 1.10.2013, 16:04:48
Post #1





Grupa: Zarejestrowani
Postów: 124
Pomógł: 0
Dołączył: 25.02.2013

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


Witam,
Zrobilem taki oto skrypt ktory po kliknieciu w DIV 'klasa' wykonuje zapytanie INSERT do bazy mysql umieszczone w pliku gf.php
Wszystko dziala do momentu w ktorym trescia DIVA nie sa odnosniki do innych stron czyli np zwykly tekst albo znaczniki <br>
W momencie gdy do Diva wstawilem animacje lub nawet zwykle hiperlacze to po kliknieciu w nie strona przenosi sie do tego adresu ale nie wykonuje juz ustawionego przeze mnie zapytania. Po kliknieciu w kazde inne miejsce w Divie zapytanie sie wykonuje. Czy ktos mógłby mi powiedziec czemu tak sie dzieje i ewentualnie pomoc to poprawic? Oto kod:

  1. <script type="text/javascript">
  2.  
  3. $(function(){
  4. $(document).ready(function() {
  5. $('.klasa').click(function() {
  6.  
  7. $.ajax({
  8.  
  9. url: "gf.php",
  10.  
  11. });
  12.  
  13.  
  14.  
  15. });
  16. });
  17. })
  18.  
  19. </script>
  20.  
  21.  
  22. <div class="klasa"><br><a href='http://forum.php.pl/'>asd</a><br><br></div>


Ten post edytował lexis72 1.10.2013, 16:05:48
Go to the top of the page
+Quote Post
_Borys_
post 1.10.2013, 17:15:55
Post #2





Grupa: Zarejestrowani
Postów: 587
Pomógł: 190
Dołączył: 5.02.2011
Skąd: 64-800

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


[JAVASCRIPT] pobierz, plaintext
  1. <script type="text/javascript">
  2. $(function() {
  3. $('.klasa').click(function() {
  4. $.ajax({
  5. url: "gf.php",
  6. });
  7. return false;
  8. });
  9. });
  10. </script>
[JAVASCRIPT] pobierz, plaintext

return false; anuluje przejście na adres w odnośniku.
$(function(){} oraz $(document).ready(function(){} to to samo a więc po co dwa razy stosować.
Go to the top of the page
+Quote Post
lexis72
post 1.10.2013, 19:09:51
Post #3





Grupa: Zarejestrowani
Postów: 124
Pomógł: 0
Dołączył: 25.02.2013

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


No tak czyli jak zostawie return false to po kliknieciu w link zapytanie sie wykonuje ale hiperlacze nie odpala... a jak usune to hiperlacze odpala ale sie juz nie wykonuje zapytanie... Tak nie moze byc. Poza tym link to tylko najprostsza forma tego co chce w divie umiescic. Mam kod w Java Script ktory jest czyms na wzor rotatora animacji, kazda animacja ma juz w sobie wbudowane hiperlacze na wybrana strone i umieszczam to w Divie i po kliknieciu w ta animacje tez nie jest wykonywane zapytanie choc jest ona umieszczona w divie. Wychodzi na to ze to dziala tylko na tekst? Jak objac caly div be wzgledu na to co umieszczam w srodku?

Ten post edytował lexis72 1.10.2013, 19:10:50
Go to the top of the page
+Quote Post
_Borys_
post 1.10.2013, 19:49:20
Post #4





Grupa: Zarejestrowani
Postów: 587
Pomógł: 190
Dołączył: 5.02.2011
Skąd: 64-800

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


Jeśli potrafisz pobrać w jquery adres odnośnika to możesz wykorzystać ajaxowe complete : i w nim przekierować na jakiś adres przy pomocy $(location).attr('href', odnosnik);
Oczywiście return false musi pozostać bo kliknięcie przerzuci przed ajaxem.
complete wykonuje się po zakończeniu połączenia ajaxowego.
Go to the top of the page
+Quote Post
lexis72
post 1.10.2013, 20:37:35
Post #5





Grupa: Zarejestrowani
Postów: 124
Pomógł: 0
Dołączył: 25.02.2013

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


A co z wstawionym do DIVA elementem java script. Dlaczego po kliknieciu w niego jquery nie wykonuje zapytania? Przeciez jest w divie a to na niego ustawiona jest funkcja CLICK.

EDIT/
Kombinowalem rozne rozwiazania z iframe i innymi elementami html i za kazdym razem jquery wykonywalo zapytanie tylko w przypadku zwyklego tekstu. Gdy pojawialy sie hiperlacza albo bardziej rozbudowane elementy nie reagowal na klikniecia w nie.

Ten post edytował lexis72 2.10.2013, 13:06:08
Go to the top of the page
+Quote Post
turbiński
post 20.10.2013, 23:25:10
Post #6





Grupa: Zarejestrowani
Postów: 23
Pomógł: 3
Dołączył: 14.10.2013

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


Jeżeli masz zdarzenie click przypisane do klasy to kliknięcie w cokolwiek co w tej klasie się znajduje powoduje wywołanie click: http://jsfiddle.net/d3qsG/

Cytat(lexis72 @ 1.10.2013, 17:04:48 ) *
Witam,
Zrobilem taki oto skrypt ktory po kliknieciu w DIV 'klasa' wykonuje zapytanie INSERT do bazy mysql umieszczone w pliku gf.php
Wszystko dziala do momentu w ktorym trescia DIVA nie sa odnosniki do innych stron czyli np zwykly tekst albo znaczniki <br>
W momencie gdy do Diva wstawilem animacje lub nawet zwykle hiperlacze to po kliknieciu w nie strona przenosi sie do tego adresu ale nie wykonuje juz ustawionego przeze mnie zapytania.


Może tutaj jest odpowiedź - http://php.net/manual/en/function.ignore-user-abort.php
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: 15.07.2025 - 19:08