![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 122 Pomógł: 0 Dołączył: 23.01.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam tabelke, i chcialby za pomcoa checboxa nie tylko zaznaczyc go, ale takze zmienic kolor tła calego wiersza. Wykombinowalem takie cos: Kod <style type="text/css"> #hehe { background: #00CCFF; } </style> <script language="javascript"> var i = 0; function click() { if ( i == 0 ) { i = 1; document.getElementById('hehe').style.background = '#FF6633'; } else { i = 0; document.getElementById('hehe').style.background = '#00CCFF'; } } </script> Kod {@setvar(var="i" val=0)} <table width="400" border="1"> {@list(teachers)} <tr id="hehe" class="hehe"><td>{@math(i+1)}</td><td>{teachers['teacherNames']}</td><td>{teachers['teacherSurname']}</td><td><input type="checkbox" name="id" onchange="javascript:click();"></td></tr> {@end} </table> Ale niestety nie dziala. Gdzie co poprawic? |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 112 Pomógł: 20 Dołączył: 10.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
nie wiem czy to wystarczy, ale zdecydowanie
Kod document.getElementById('hehe').style.backgroundColor = '#FF6633'; zamiast Kod document.getElementById('hehe').style.background = '#FF6633'; pozdr. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 122 Pomógł: 0 Dołączył: 23.01.2006 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 660 Pomógł: 13 Dołączył: 9.06.2004 Skąd: Wrocław i okolice Ostrzeżenie: (0%) ![]() ![]() |
Spróbuj podglądnąć tutaj jak zmieniam kolor wiersza.
-------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 112 Pomógł: 20 Dołączył: 10.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
no tak... nie zwróciłem uwagi... banalność, ehh..
zmiana: Kod onchange="javascript:click();" onchange="click();" powinna problem rozwiązać. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 122 Pomógł: 0 Dołączył: 23.01.2006 Ostrzeżenie: (0%) ![]() ![]() |
siemakuba, bylby zbyt banalny, nie mysl, ze tego nie sprawdzalem wczesniej, nie dziala.
TomASS: podejrzalem, jednak jestem juz o krok od wlasnego rozwiazania problemu. brakuje mi tylko jednego: co tam powinno byc <input type="checkbox" costam="funkcja();"> Brakuje mi tego costam. A moze w ogle tak sie nie da? |
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 112 Pomógł: 20 Dołączył: 10.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
hmm, skoro tak, to faktycznie problem leży w odpowiednim dobraniu zdarzenia na jakie ma zareagowac funkcja.
próbowałeś onclick? i jeszcze jedno, nie wiem jakie masz style, ale jezeli definiujesz w nich kolor tla dla TD, to zmiany przez JS dla TRa nic nie dadzą. Moze sproboj zamiast: Kod document.getElementById('hehe').style.background = '#FF6633'; dać: Kod var eRow = document.getElementById('hehe'); var eCells = eTR.getElementsByTagName('TD'); for (var eCell in eCells) { eCell.style.backgroundColor = '#FF6633'; } pozdr. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 28.07.2005 Skąd: 64-100 Leszno Ostrzeżenie: (0%) ![]() ![]() |
onclick powinno wystarczyc, status checkboxa mozesz sprawdzic np przez
document.getElementById('twoj_check').checked zwroci true lub false i zawsze mozesz mu zmienic przypisujac np document.getElementById('twoj_check').checked=true; np. Kod <input type="checkbox" id="act.check" onclick="javascript:CheckMe('act.check');"> <script> function CheckMe(ID){ var IDA=document.getElementById('ID'); if (ID=='act.check') { //twoje funkcje tutaj //np. if (IDA.checked==false) { //jesli byl zaznaczony } else { //w przeciwnym wypadku } } } </script> a co do zmiany styli to proponuje abys utworzyl 2 klasy dla TD , jedno dla odznaczonego (o nazwie TD.default ) , drugie dla zaznaczonego ( TD.my_selected) style mozesz zmieniac przez className czyli <td class="default" id="wiersz.80"></td> i np. po wcisnieciu checkboxa niech zmieni sie jego classname Kod <script> function CheckMe(ID){ var IDA=document.getElementById('ID'); if (ID=='act.check') { //twoje funkcje tutaj //np. if (IDA.checked==false) { //jesli byl zaznaczony document.getElementById('wiersz.80').className='my_selected'; } else { //w przeciwnym wypadku document.getElementById('wiersz.80').className='default'; } } } </script> pamiętaj że zmiana całej klasy jest szybsza niż elementu stylu http://www.quirksmode.org/dom/classchange.html Ten post edytował Tajny 11.05.2006, 00:13:37 -------------------- "Who controls the past controls the future. Who controls the present controls the past. "
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 23:01 |