Autor | Zpráva | ||
---|---|---|---|
nedouk007 Profil |
#1 · Zasláno: 24. 4. 2012, 20:58:23
Ahoj.
Mam funkci na expanzi tabulky, stav expand/collapse si cte z globalni promenne rowVisible, ja tech tabulek na stranku potrebuju X. pri prostem kopirovani vsechny ctou tutez globalni prommenou. existuje nejake reseni misto stavajiciho var PŘEPÍNAČ function(TABULKA){ if(PREPINAC) PREPINAC= !PREPINAC; } nejake čárymáry var PREPINACPROTABULKU1 var PREPINACPROTABULKU2 function(TABULKA, JMENO_PREPINACE){ PREPINAC<- čárymáry(JMENO_PREPINACE) if(PREPINAC) PREPINAC= !PREPINAC; } Umim udelat tak, ze kazda tabulka ma i svuj js, ktery se lisi jen tim globalnim prepinacem. Ale to je asi d*ebilni. Tabulek mam mraky. dik cela fce var rowVisible = TRUE function toggleTabRows(tbl,showfirst) { tbl.style.display=""; var tblRows = tbl.rows; for (i = showfirst; i < tblRows.length; i++) { tblRows[i].style.display = (rowVisible) ? "none" : ""; } rowVisible = !rowVisible; } |
||
peta Profil |
nedouk007:
Posli funkcni ukazku. Element PREPINAC neznam. JS kod dole se da nahradit display="none" pro celou tabulku tbl. <table id=tabulka1></table> <table id=tabulka2></table> <script> var visible = {'tabulka1':true,'tabulka2':false}; var tbl = document.getElementById('tabulka1'); var id = tbl.id; var vis = visible[id]; alert(vis); var tbl = document.getElementById('tabulka2'); var id = tbl.id; var vis = visible[id]; alert(vis); </script> Protoze visible neni parametr tabulky, tak neovlivni nijak element, muzes ho zapsat primo do elementu. <table id=tabulka1></table> <table id=tabulka2></table> <script> var tbl, vis; tbl = document.getElementById('tabulka1'); tbl.visible = true; vis = tbl.visible; alert(vis); tbl = document.getElementById('tabulka2'); tbl.visible = false; vis = tbl.visible; alert(vis); </script> |
||
Kcko Profil |
#3 · Zasláno: 25. 4. 2012, 08:02:43
var rowVisible = []; function toggleTabRows(tbl,showfirst) { tbl.style.display=""; var tblRows = tbl.rows; if (typeof rowVisible[tbl.id] == undefined) { rowVisible[tbl.id] = true; } for (i = showfirst; i < tblRows.length; i++) { tblRows[i].style.display = (!rowVisible[tbl.id]) ? "none" : ""; } rowVisible[tbl.id] = !rowVisible[tbl.id]; } |
||
nedouk007 Profil |
#4 · Zasláno: 25. 4. 2012, 12:11:08
Panove, oboum dekuju.
Reseni od Kcko: je naprosto idealni. pro peta ten muj pokus to byl jen pseudokod - ja bastlim v jazyce, kde existuje x = get("jmeno promenne") ted jeste zbyva vymyslet, jak to udelat, aby si tabulka drzela fixni sirku sloupcu pri expanzi/kolapsu. Je nejaky zpusob, jak si script precte jak ma udelat tabulku velkou, aby ji pak nemusel po expanzi prifouknout? Nechci davat fixni sirky sloupcu v css. Tabulky, co generuju maj nejruznejsi obsah. diky moc |
||
Časová prodleva: 12 let
|
0