Ahoj, toto řešení funguje super. Chtěl bych ještě trochu změnit chování.
pokud dám do [ital] [/ital] další [ital] [/ital] tak se mi chování, resp. skrývání/zobrazování projeví i na [ital][/ital] uvnitř této vnořené tabulky.
je to možné nějak potlačit a s [ital] [/ital] v 2. tabulce nic nedělat?
Mooc díky
Ahoj,
toto řešení funguje super.
Chtěl bych ještě trochu změnit chování.
pokud dám do [ital] [/ital] další [ital][/ital] tak se mi chování, resp. skrývání/zobrazování projeví i na [ital][/ital] uvnitř této vnořené tabulky.
je to možné nějak potlačit a s [ital] [/ital] v 2. tabulce nic nedělat?
Mooc díky
Citovat příspěvek
Re: Skrytí/Zobr části tabulky
Autor: tomkralik 14:52:44 01.07.2011
|
super, ještě se mi nemění kurzor myši, ale to už neřeším.
mooc díky
super,
ještě se mi nemění kurzor myši, ale to už neřeším.
mooc díky
Citovat příspěvek
|
Re: Skrytí/Zobr části tabulky
Autor: asdasd 13:16:46 01.07.2011
|
Aha, to způsobuje tohle pravidlo, to totiž skryje všechny lichý řádky:
[code]#knizky tr:nth-child(2n+1) { display: none; }[/code]
Přidej do stylů ještě tohle a hlavičky se budou zobrazovat:
[code]#knizky tr:first-child { display: table-row; }[/code]
Aha, to způsobuje tohle pravidlo, to totiž skryje všechny lichý řádky:
[code]#knizky tr:nth-child(2n+1) {
display: none;
}[/code]
Přidej do stylů ještě tohle a hlavičky se budou zobrazovat:
[code]#knizky tr:first-child {
display: table-row;
}[/code]
Citovat příspěvek
|
Re: Skrytí/Zobr části tabulky
Autor: tomkralik 12:46:37 01.07.2011
|
ahoj, tak jsem to zkoušel a funguje to super.
jen ještě nezobrazuje se , záhlaví tabulek?
zkoušel jsem i tvůj příklad a také se záhlaví nezobrazí, přesto, že je napsané.
mooc díky za pomoc.
ahoj, tak jsem to zkoušel a funguje to super.
jen ještě nezobrazuje se | , záhlaví tabulek?
zkoušel jsem i tvůj příklad a také se záhlaví nezobrazí, přesto, že je napsané.
mooc díky za pomoc.
Citovat příspěvek
| |
Re: Skrytí/Zobr části tabulky
Autor: asdasd 10:01:47 30.06.2011
|
[quote]ještě pro zajímavost když jsem testoval zachycení události "kliknutí myši" v JS tak mi .click nefunguje, ale musel jsem použít .live [/quote]
Událost pro kliknutí nejspíš nastavuješ ještě před tím, než je tlačítko v DOMu. Kód, který pracuje s prvky vkládej do události $(document).ready(function() { tvůj kód }); nebo zkráceně $(function() { ... });.
[quote]ještě pro zajímavost
když jsem testoval zachycení události "kliknutí myši" v JS tak mi .click nefunguje, ale musel jsem použít .live [/quote]
Událost pro kliknutí nejspíš nastavuješ ještě před tím, než je tlačítko v DOMu. Kód, který pracuje s prvky vkládej do události $(document).ready(function() { tvůj kód }); nebo zkráceně $(function() { ... });.
Citovat příspěvek
|
Re: Skrytí/Zobr části tabulky
Autor: asdasd 9:55:32 30.06.2011
|
- To prostě musí fungovat, podle mě nevkládáš do stránky jQuery nebo nečekáš na načtení všech prvků. - Je nutné kvůli popisu zanořovat další tabulku? - Pokud chceš použít 'detknizka' u více řádků(nejspíš jo), tak to nedávej do id, ale do třídy. - Řádky v tabulce můžeš vybírat pomocí pseudotřídy :nth-child(). - Místo atributů borderspacing a borderpadding se dá použít css vlastnost border-collapse.
[code]
Číslo | Autor | Název |
---|
52145125 | Issac Asimov | Já, robot | Sci-fi |
12345678 | Dr. X Krement | Spiknutí kokotů | No comment |
98765432 | D-FENS | Zmrdi, vohnouti a my | Kurevsky výstižná literatura | [/code]
- To prostě musí fungovat, podle mě nevkládáš do stránky jQuery nebo nečekáš na načtení všech prvků.
- Je nutné kvůli popisu zanořovat další tabulku?
- Pokud chceš použít 'detknizka' u více řádků(nejspíš jo), tak to nedávej do id, ale do třídy.
- Řádky v tabulce můžeš vybírat pomocí pseudotřídy :nth-child().
- Místo atributů borderspacing a borderpadding se dá použít css vlastnost border-collapse.
[code]
Číslo
|
Autor
|
Název
|
52145125
|
Issac Asimov
|
Já, robot
|
Sci-fi
|
12345678
|
Dr. X Krement
|
Spiknutí kokotů
|
No comment
|
98765432
|
D-FENS
|
Zmrdi, vohnouti a my
|
Kurevsky výstižná literatura
|
[/code]
Citovat příspěvek
|
Re: Skrytí/Zobr části tabulky
Autor: tomkralik 8:02:53 30.06.2011
|
ještě pro zajímavost když jsem testoval zachycení události "kliknutí myši" v JS tak mi [ital].click[/ital] nefunguje, ale musel jsem použít [ital].live [/ital]
[bold]Nefunkční událost[/bold] $("#tlacitko").click(function(){ $("#search").toggle(1000); });
[bold]Funkční událost[/bold] $("#tlacitko").live('click', function(){ $("#search").toggle(1000); });
toto chování mi není jasné, nicméně ".live" funguje
tak mě napadlo jak v této situaci mohu [ital].click [/ital] nahradit [ital].live [/ital]
mooc díky
ještě pro zajímavost
když jsem testoval zachycení události "kliknutí myši" v JS tak mi [ital].click[/ital] nefunguje, ale musel jsem použít [ital].live [/ital]
[bold]Nefunkční událost[/bold]
$("#tlacitko").click(function(){
$("#search").toggle(1000);
});
[bold]Funkční událost[/bold]
$("#tlacitko").live('click', function(){
$("#search").toggle(1000);
});
toto chování mi není jasné, nicméně ".live" funguje
tak mě napadlo jak v této situaci mohu [ital].click [/ital] nahradit [ital].live [/ital]
mooc díky
Citovat příspěvek
|
Re: Skrytí/Zobr části tabulky
Autor: tomkralik 7:46:32 30.06.2011
|
tak jsem to zkoušel a bohužel mi to nejede.
Připojuji sem výpis přímo výstupu v HTML
[bold]JS pripojuji[/bold] [ital][/ital] mám udělanou ještě jednu jednoduchou funkci na ověření funkčnosti připojeni JS a ta jede bez problémů.
[bold]HMTL výstup[/bold]
Číslo | Autor | Název |
---|
52145125 | Issac Asimov | Já, robot |
|
uvedl jsem špatný název hlavní tabulky, ale teď je to správně, skrývání ale stejně nejede. [bold]JS script[/bold] $('#knizky').delegate('span.cf', 'click', function() { $(this) .closest('tr') .next('tr') .find('table') .toggle(); }); mooc díky všem za reakce. t0m
tak jsem to zkoušel a bohužel mi to nejede.
Připojuji sem výpis přímo výstupu v HTML
[bold]JS pripojuji[/bold]
[ital][/ital]
mám udělanou ještě jednu jednoduchou funkci na ověření funkčnosti připojeni JS a ta jede bez problémů.
[bold]HMTL výstup[/bold]
Číslo |
Autor |
Název |
52145125 |
Issac Asimov |
Já, robot |
|
uvedl jsem špatný název hlavní tabulky, ale teď je to správně, skrývání ale stejně nejede.
[bold]JS script[/bold]
$('#knizky').delegate('span.cf', 'click', function() {
$(this)
.closest('tr')
.next('tr')
.find('table')
.toggle();
});
mooc díky všem za reakce.
t0m
Citovat příspěvek
|
Re: Skrytí/Zobr části tabulky
Autor: asdasd 22:05:24 29.06.2011
|
Sorry, zapomněl jsem to uzavřít:
[code] $('#faktury').delegate('span.cf', 'click', function() { $(this) .closest('tr') .next('tr') .find('table') .toggle(); });[/code]
Sorry, zapomněl jsem to uzavřít:
[code]
$('#faktury').delegate('span.cf', 'click', function() {
$(this)
.closest('tr')
.next('tr')
.find('table')
.toggle();
});[/code]
Citovat příspěvek
|
Re: Skrytí/Zobr části tabulky
Autor: asdasd 22:04:11 29.06.2011
|
Přidávat id 1000 položkám, které se jinak dají jednoduše traverzovat, taky není zrovna výhra. Kód od qwejkl je v pohodě, akorát by to chtělo použít delegování:
[code] $('#faktury').delegate('span.cf', 'click', function() { $(this) .closest('tr') .next('tr') .find('table') .toggle(); });
Přidávat id 1000 položkám, které se jinak dají jednoduše traverzovat, taky není zrovna výhra. Kód od qwejkl je v pohodě, akorát by to chtělo použít delegování:
[code]
$('#faktury').delegate('span.cf', 'click', function() {
$(this)
.closest('tr')
.next('tr')
.find('table')
.toggle();
});
Citovat příspěvek
|
Re: Skrytí/Zobr části tabulky
Autor: designerrr 20:09:34 29.06.2011
|
Cau, pripoj jenom jeden handler na onclick k te hlavni tabulce. Pak pri generovani php kodu akorat generuj tem prvkum, ktery maji zpusobovat rozbalovani, id (napr. = $key.'_film' ?>). A tem tabulkam generuj id (napr. = $key.'_detail' ?>). V handleru na click v te hlavni tabulce pak akorat pres jednoduchej regularni vyraz cekuj (event.target || event.srcElement).id na pritomnost toho $key_film a když to bude ok, tak si najdes prvek $key_detail a zobrazis ho pres nejakou tu funkci na animaci. Hlavne nepripojuj click handler ke kazdymu tomu prvku, protoze v pripade napr. 1000 filmu by to bylo docela brutal, co sem cetl.
V dojo toolkitu: [code] function tableClickHandler(e) { var result = null; if( result = /([0-9]*)_film/i.exec((e.target || e.srcElement).id)) { var args = {node:dojo.byId(result[1]+"_detail")}; if(tableClickHandler.lastAnimatedNode) dojo.fx.combine([ dojo.fx.wipeIn(args), dojo.fx.wipeOut({node:tableClickHandler.lastAnimatedNode,duration:100}) ]).play(); else dojo.fx.wipeIn(args).play(); tableClickHandler.lastAnimatedNode = args.node; }} [/code]
Cau, pripoj jenom jeden handler na onclick k te hlavni tabulce.
Pak pri generovani php kodu akorat generuj tem prvkum, ktery maji zpusobovat rozbalovani, id (napr. = $key.'_film' ?>). A tem tabulkam generuj id
(napr. = $key.'_detail' ?>). V handleru na click v te hlavni tabulce pak akorat pres jednoduchej regularni vyraz cekuj (event.target || event.srcElement).id na pritomnost toho $key_film a když to bude ok, tak si najdes prvek $key_detail a zobrazis ho pres nejakou tu funkci na animaci.
Hlavne nepripojuj click handler ke kazdymu tomu prvku, protoze v pripade napr. 1000 filmu by to bylo docela brutal, co sem cetl.
V dojo toolkitu:
[code]
function tableClickHandler(e) {
var result = null;
if( result = /([0-9]*)_film/i.exec((e.target || e.srcElement).id)) {
var args = {node:dojo.byId(result[1]+"_detail")};
if(tableClickHandler.lastAnimatedNode)
dojo.fx.combine([
dojo.fx.wipeIn(args), dojo.fx.wipeOut({node:tableClickHandler.lastAnimatedNode,duration:100})
]).play();
else
dojo.fx.wipeIn(args).play();
tableClickHandler.lastAnimatedNode = args.node;
}}
[/code]
Citovat příspěvek
|
Re: Skrytí/Zobr části tabulky
Autor: qwejkl 17:09:22 29.06.2011
|
Pokud se podle tvého kódu má po kliku na cf zobrazit ta skrytá TABLE s popisem v daším TR, tak:
$('span.cf').click(function() { $(this).closest('tr').next('tr').find('table').show(); });
Pokud se podle tvého kódu má po kliku na cf zobrazit ta skrytá TABLE s popisem v daším TR, tak:
$('span.cf').click(function() {
$(this).closest('tr').next('tr').find('table').show();
});
Citovat příspěvek
|
Re: Skrytí/Zobr části tabulky
Autor: roman.hocke 15:52:46 29.06.2011
|
Prima, ale nikde tam nevidím ten Javascript, ten voláš kde / jak? Jo a ukaž prosím HTML výstup, ne šablonu, ať je vidět, kde tam reálně pak je např. ten prvek a podobně (počítám že ten asi vyleze z {$kniha['popis']}?)
Prima, ale nikde tam nevidím ten Javascript, ten voláš kde / jak? Jo a ukaž prosím HTML výstup, ne šablonu, ať je vidět, kde tam reálně pak je např. ten prvek a podobně (počítám že ten asi vyleze z {$kniha['popis']}?)
Citovat příspěvek
|
Re: Skrytí/Zobr části tabulky
Autor: tomkralik 15:42:12 29.06.2011
|
jj určitě, to už jsem mohl sem dát dávno :-)
Autor | Nazev |
---|
{foreach $knihy as $kniha} {$kniha['Autor']} | {$kniha['nazev']} | |
{/foreach}
prvek "cf" je pro detekci kliknuti a ten poslední by se měl zobrazit/skrýt
díky
jj určitě, to už jsem mohl sem dát dávno :-)
Autor |
Nazev |
{foreach $knihy as $kniha}
{$kniha['Autor']} |
{$kniha['nazev']} |
|
{/foreach}
prvek "cf" je pro detekci kliknuti a ten poslední by se měl zobrazit/skrýt
díky
Citovat příspěvek
|
Re: Skrytí/Zobr části tabulky
Autor: roman.hocke 15:12:26 29.06.2011
|
Můžeš sem hodit přímo kus HTML kódu, kde bude vidět jeden celý ten "řádek" s filmem?
Můžeš sem hodit přímo kus HTML kódu, kde bude vidět jeden celý ten "řádek" s filmem?
Citovat příspěvek
|
Re: Skrytí/Zobr části tabulky
Autor: tomkralik 15:09:05 29.06.2011
|
je to tak, že co řádek to film a k němu po kliknutí na řádek by měl vyjet další "tr" a ten zobrazí detailnější popis.
položky (řádky) čtu z DB a nevím kolik jich je a bude, tedy různý počet
nevím jak bych ty aut. očísloval.
myslel jsem, že lze použít něco přávě ve smyslu [ital]$(this).next("p").toggle('blind',1000);[/ital] toto s "p" či "span" funguje super, ale s "tr" ne
ano používám jQuery
díky
je to tak, že co řádek to film a k němu po kliknutí na řádek by měl vyjet další "tr" a ten zobrazí detailnější popis.
položky (řádky) čtu z DB a nevím kolik jich je a bude, tedy různý počet
nevím jak bych ty aut. očísloval.
myslel jsem, že lze použít něco přávě ve smyslu [ital]$(this).next("p").toggle('blind',1000);[/ital]
toto s "p" či "span" funguje super, ale s "tr" ne
ano používám jQuery
díky
Citovat příspěvek
|
Re: Skrytí/Zobr části tabulky
Autor: roman.hocke 14:34:09 29.06.2011
|
Přijde na to, jak to máš vlastně celé napsané. Zjevně používáš jQuery, takže obecně vzato:
1. Máš obecně nějaký element (v tvém případě , pokud jsem pochopil), který chceš skrývat. Potřebuješ v rámci dokumentu (DOM) ten element nějak jednoznačně určit, to můžeš třeba pomocí atributu id:
... ... ... 2. Přes jQuery selectuješ ten element (v tomhle případě právě přes atribut id, ale třeba chceš schovávat řádky podle různých jiných kritérií, tříd atd.) a zobrazíš, schováš, např.: $('#radek_1').show(); $('#radek_3').hide(); $('#radek_8').toggle();
Přijde na to, jak to máš vlastně celé napsané. Zjevně používáš jQuery, takže obecně vzato:
1. Máš obecně nějaký element (v tvém případě , pokud jsem pochopil), který chceš skrývat. Potřebuješ v rámci dokumentu (DOM) ten element nějak jednoznačně určit, to můžeš třeba pomocí atributu id:
...
...
...
2. Přes jQuery selectuješ ten element (v tomhle případě právě přes atribut id, ale třeba chceš schovávat řádky podle různých jiných kritérií, tříd atd.) a zobrazíš, schováš, např.:
$('#radek_1').show();
$('#radek_3').hide();
$('#radek_8').toggle();
Citovat příspěvek
|
Skrytí/Zobr části tabulky
Autor: tomkralik 13:54:15 29.06.2011
|
Ahoj lidičky, prosím jestli byste mi poradili s JS a skrývání části tabulky zobrazuji tabulku a jednotlivé položky vypisuji přes [ital]foreach[/ital] z DB
chtěl bych přidat další řádek a do něj tabulku a tu skrýt tedy: | výpis a i skrývání/zobrazení funguje, ALE jen u prvního záznamu u dalších již ne. Nevím jak použít tento příkaz [ital]$(this).next("p").toggle('blind',1000);[/ital] v kombinaci na [ital] [/ital]
prosím poraďte.
Mooc díky
Ahoj lidičky,
prosím jestli byste mi poradili s JS a skrývání části tabulky
zobrazuji tabulku a jednotlivé položky vypisuji přes [ital]foreach[/ital] z DB
chtěl bych přidat další řádek a do něj tabulku a tu skrýt
tedy:
|
výpis a i skrývání/zobrazení funguje, ALE jen u prvního záznamu u dalších již ne.
Nevím jak použít tento příkaz [ital]$(this).next("p").toggle('blind',1000);[/ital] v kombinaci na [ital] [/ital]
prosím poraďte.
Mooc díky
Citovat příspěvek
|
|