Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jQuery] Restart
Forum PHP.pl > Forum > Po stronie przeglądarki
propage
Zrobiłem sobie w jquery, system rankinku, klient klika w gwiazdke, aby zagłosować, w tym momencie głos zostaje zliczony i php (ajax) odsyła mi uaktualniony ranking.

Problem w tym, że kiedy skrypt juz auaktualni gwiazki, jeśli klient ponownie kliknie w gwiazdke, to skrypt sie nie wykonuje. Po odświeżeniu strony nie ma tego problemu.

Wnioskuje, że trzeba jakby jeszcze raz wykonać. Wnioskuje, że jeszcze raz trzeba przypisać akcje "gwiazdkom" do głosowania tym już auaktalnionym, tylko jak to zrobić

Dla wiekszego zrozumienia podaje fragment skryptu

  1. $(document).ready(function(){
  2.    $('.gwiazdki a').click(function() {
  3.        
  4.        var vote;
  5.        var item_id;
  6.        this_id     = $(this).parent();    
  7.        item_id     = $(this).parent().attr('title');
  8.        vote         = $(this).attr('title');
  9.        
  10.        $.post("http://<?=$config['domain']?>/ajax/rating.php", {item_id: item_id, vote: vote },
  11.              function(data){
  12.            var data_arr = data.split('|');
  13.            alert(data_arr[0]);
  14.            if(data_arr[1].length > 1 )
  15.            this_id.html(data_arr[1]);  //Tutaj nastepuje aktalizacja, czyli dotychczasowe gwiazki sa zastepowane nowymi (tego koloru jakiego powinny byc), ale nic pozatym sie nie zmienia, i po tej operacji " $('.gwiazdki a').click(function() {" nie zadziała.
  16.        });  
  17.        
  18.        return false;
  19.        
  20.    });        
  21. });
Kihol
Nie ma prawa zadziałać, bo podpiąłeś event onclick pod inny obiekt.
Tzn $(document).ready wykonuje się tylko raz: po załadowaniu całego dokumentu i podpina event (onclick w tym przypadku) pod konkretne obiekty. Po przeładowaniu gwiazdek to już są zupełnie inne obiekty. Lepiej podmień tylko src odpowiednich gwiazdek, wtedy obiekt pozostanie, a podpięty do niego event będzie działał.
Mam nadzieję, że wyraziłem się zrozumiale.
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.