Autor Zpráva
Andrej.B
Profil
Zdravim

mam jednoduchy kod, ktory mi po kliknuti na hocijaku bunku v riadku zmeni cely riadok na cerveny. OK.

jsfiddle.net/vs3o7jfr/2

Skor by som potreboval aby mi zmenilo farbu celeho riadku len po kliknuti na poslednu bunku /DONE/ v riadku. Ostatne Bunky v riadku obsahujú veci, ktoré si po kliknutí skopírujem do schranky a neskor pouzivam, takto mi to scervenie aj ked vlastne nechcem
Kod nizsie zmeni len ten TD, co je samozrejme.

jsfiddle.net/vs3o7jfr/3


Je nejako moznost to opravit ako potrebujem.

Dakujem
Keeehi
Profil
$( "this" ).parent().css(... ?
Andrej.B
Profil
Keeehi:

kod funguje, ale prestalo menit farbu po opatovnom kliknuti spat na white BG. predtym fungovalo tak, ze po opatovnom kliknuti na Done mi zmenilo farbu spat na bielu.

<script>
$(document).ready(function () {
    $('td.test').click(function () {
        if(this.style.background == "" || this.style.background =="white") {
          $( this ).parent().css('background', 'red');
        
        }
        else {
            $( this ).parent().css('background', 'white');
        }
    });
    
});

</script>


dik
Keeehi
Profil
Andrej.B:
Kontroluješ barvu toho td this.style.background ale měníš barvu rodiči. Měl bys tedy kontrolovat barvu rodiče. A než konkrétní barvu, bylo by lepší to řešit třídou.

    $('td.test').click(function () {
        var trElement = $(this).parent();
        if(trElement.hasClass('selected')) {
            trElement.removeClass('selected');
        } else {
            trElement.addClass('selected');
        }
    });

CSS
.selected {
    background: red;
}
Andrej.B
Profil
fantasticke.
Javascript pouzivam vzdy len hotovy, takze si s nim pomoct moc neviem.

Dakujem.
Kcko
Profil
Ještě se to může lehce zkrátít a bude to krajšie ;-)

  trElement.hasClass('selected') ?   trElement.[trElement.hasClass('selected') ? 'removeClass' : 'addClass']('selected')
juriad
Profil
Můžeme to zkrátit ještě trochu víc a použít přímo k tomu určenou metodu trElement.toggleClass('selected'). Seznam všech 4 metod pro manipulaci tříd je v dokumentaci.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0