Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript] Akcja na naciśnięcie komórki tabeli
berettakk
post 12.05.2009, 12:24:58
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 24.11.2007

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


Mam 2 tabele i 2 kalendarze, w których każdy dzień ma osobną komórkę z unikalnym id. Dodałem funkcję na kliknięcie w komórce tabeli:
Kod
function onload() {
     cal1 = $("#kalendarz_gorny tr td[id^='day-']");
     cal2 = $("#kalendarz_dolny tr td[id^='day-']");

     cal1.each( function(i) {

         $(this).click( function(event) {

             event.preventDefault();
             do_the_acting(this);
         });
     });

     cal2.each( function(i) {

         $(this).click( function() {

             event.preventDefault();
             do_the_acting(this);
         });
     });
}

Funkcja do_the_acting():
Kod
function do_the_acting(obj) {
//document.write(obj.id);

     if( from == null ) {
         from = obj.id.substr(4);
         $(obj).addClass('selected');
     }
     else if( from == obj.id.substr(4) ) {
         from = null;
         $(obj).removeClass('selected');
         days = new Array();
     }
     else
     {
         if( from < obj.id.substr(4) ) {
             to = obj.id.substr(4);
             $(obj).addClass('selected');
         }
         else {
             to = from;
             from = obj.id.substr(4);
             $(obj).addClass('selected');
         }

Dlaczego funkcja przy każdym kliknięciu wywoływana jest 2 razy?
Widać to po dwukrotnym wypisaniu obj.id, jeśli je odkomentuję i po tym, że selected niemal od razu jest wyłączane.
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: 14.08.2025 - 11:24