Prawie działa ^^ - niestety znika/pojawi się tylko pierwsza komórka danej kolumny - to chyba przez to, że tabela jest tworzona dynamicznie ponieważ na statycznym przykładzie wszystko działa pięknie - a gdy wrzucam to do php to element TH w ogóle się nie pojawia a TD tylko w pierwszym wierszu - jakieś pomysły jak to naprawić?
<label><input type="submit" value="Ukryj produkty" onclick="ukryj()" /></label><label><input type="submit" value="Pokaz produkty" onclick="odkryj()" /></label>
<table id="test" class="tabela" border="0" cellspacing="0"> <th style="display: none">produkty
</th>
{foreach from=$produkty item=produkty}
<tr class="{cycle values=',odd-row'}{$tr_class}"> <td>{$produkty->nr_dokumentu}
</td> <td style="display: none"> <table cellspacing="0" class="produkty"> {foreach from=$proukty->produkty item=produkt}
<td>{$produkt->nazwa_prod|escape}
</td> <td>{$produkt->ilosc} szt.
</td> {/foreach}
<td>{$produkty->username}
</td> {/foreach}
funkcje w JS
function ukryj() {
var tr = document.getElementById('test').getElementsByTagName('tr'),td;
for(var i=1; td = tr[i++]; ){
td.getElementsByTagName('td')[2].style.display = 'none';
}
th = tr[0];
th.getElementsByTagName('th')[2].style.display = 'none';
}
function odkryj() {
var tr = document.getElementById('test').getElementsByTagName('tr'),td;
for(var i=1; td = tr[i++]; ){
td.getElementsByTagName('td')[2].style.display = 'table-cell';
}
th = tr[0];
th.getElementsByTagName('th')[2].style.display = 'table-cell';
}
edit: ok już wiem, że problemem jest zagnieżdżona tabelka - tylko nie wiem jak 'wyłączyć' ją z działania funkcji - jakieś pomysły?