webForumDet fria alternativet

Dölja <tr>

14 svar · 1 942 visningar · startad av evilaid

evilaidMedlem sedan apr. 2009433 inlägg
#1

Hej

Jag skriver ut en lång tabell i HTML och jag vill dela upp den lite, jag skulle vilja dölja en del av alla tabellrader..

Trodde det gick med
<div style="visibility: hidden">
<tr><td></td></tr>
<tr><td></td></tr>
</div>

detta verkar inte funka och inte heller om jag lägger visibility: hidden i tr taggen, då tar den fortfarande uppp utrymmet men den syns inte...

Finns det något annat sätt attlösa det på?

mvh

rhdfMedlem sedan okt. 2007446 inlägg
#2

helt rätt att visibility: hidden gör att elementet tar upp den plats det skulle tagit upp
testa istället med display:none

Danne VMedlem sedan aug. 20068 090 inlägg
#3

Mja... som rhdf skriver, så är det display:none om du nu väljer att använda css.
Men du kan ju inte klämma in en div mitt inne i en tabell utan ska lägga in stilen i varje tr-tag du vill göra osynlig.

Jag skulle nog bara kommentera bort de rows jag inte ville visa istället, typ så här

<table>
<tr></tr>
<tr></tr>
<!--<tr></tr>-->
<tr></tr>
<!--<tr></tr>-->
<tr></tr>
</table>
evilaidMedlem sedan apr. 2009433 inlägg
#4

a min tanke är att jag lägger en rad med en rubrik och ett plustecken så man kan expandera de dolda raderna och visa dom om man måste se just dom..

typ
<tr><td colspan="2">VIsa dolda <a href="">+</A></td></tr>
<div style="visibility: hidden" name="id22">
<tr><td></td></tr>
<tr><td></td></tr>
</div>

eller är det feltänk?

voigtann1Medlem sedan juni 20019 519 inlägg
#5

en div kan inte vara inne i en <table> och jag tycker det känns helt fel att använda tabeller på det sättet (använd tabeller där tabeller skall presentera tabell-data, vilket "visa och dölj" inte riktigt är i mina ögon.

evilaidMedlem sedan apr. 2009433 inlägg
#6

kan hålla med om att det inte känns riktig alls att placera den så..
men om jag använder mig av display:none i <tr> taggen då?
Tabell känns ändå rätt till den data det är, saken är den att tabellen kanske blir lite stor och oöverskådlig, så det hade varit ett snyggt altetrnativ att inte alla rader visas utan istället en rubrik bara som går att klicka på för att expandera resten om så är nödvändigt..

voigtann1Medlem sedan juni 20019 519 inlägg
#7

"Visa alla/Visa/dölj" är verkligen inte tabell-data, men problemet är vilka tr skall du dölja? Det måste vara fler än en väl?

evilaidMedlem sedan apr. 2009433 inlägg
#8

japp, det är en hel grupp med rader.. Det listas en gäng ordrar med kanske 50 orderrader, dessa 50 är uppdelade i olika produktgrupper.. så listan består av ett gäng ordrar med olka produkt grupper... Här ska det gå snabbt och enkelt för användaren att bläddra mellan ordrarna och kolla de olika produktgrupperna..

rhdfMedlem sedan okt. 2007446 inlägg
#9

hur är det nu, kan man inte ha flera <tbody> i en tabell?
i så fall skulle du ju kunna gruppera de rader du vill ha på det viset

Renegade8164Medlem sedan sep. 201046 inlägg
#10

Du menar att du vill ha något som filterar exempelvis allt som inte har värdet "spel" i tabellen, sortera om tabellen, utan att behöva uppdatera sidan?

Detta kan lösas med Javascript/jQuery, här är två artiklar som hjälper dig på traven.
http://net.tutsplus.com/tutorials/javascript-ajax/using-jquery-to-manipulate-and-filter-data/
http://www.javascriptf1.com/tutorial/javascript-hide-table-row.html?page=3

evilaidMedlem sedan apr. 2009433 inlägg
#11

nja, det kunde vara en modell, men jag skriver ut allt från databsen som finns inom ett visst antal grupper..
Jag gjorde så att jag använde mig av <tobdy>
typ så här
<tr><td colspan="2"><a href="showtBody("12")">Lösa detaljer</a></td></tr>
<tobdy style="display:none" id="12">
<tr><td>blaha blha</td><td>blaha blaha</td></tr>
<tr><td>blaha blha</td><td>blaha blaha</td></tr>
<tr><td>blaha blha</td><td>blaha blaha</td></tr>
</tbody>

jag provade använda jQuery med toggle men fick inte det att funka..
Har gjort precis som i ditt första exempel..

voigtann1Medlem sedan juni 20019 519 inlägg
#12

Ett ID får ALDRIG börja med ett tal!

Sen vet jag inte hur du har i resten av din HTML tabell men: http://jsbin.com/usanin/edit

Du behöver inte ha ID alls om du vet hur din HTML kod renderas ut.

evilaidMedlem sedan apr. 2009433 inlägg
#13

:)
Okey, det var ett dåligt exempel av mig.. Id'et heter något i stil med "tbody12"
Den här lilla prylen med "closest" var ju skitsmart ..

Jag gjorde en javascript funktion som visar det dolda lagret och samtidigt byter länktexten samt länkreferensen..
Ditt exempel blir ju skitsmidigt.. Enda detaljen kvar då är ju hur jag byter ut innehållet i den klickbara <tr> 'en? Nu har jag ju använt innerHtml..
Jag har nämligen en bild på ett "plus" tecken som ändras till ett "minus" tecken efter man expanderat.

voigtann1Medlem sedan juni 20019 519 inlägg
#14

du bygger ju bara ut den lilla metod jag har gjort... kolla bara om den är öppen eller inte, eller så byter du CSS-klass när du togglar... finns många lösningar för det.

http://jsbin.com/usanin/3/edit

visar bara med text ... feel free to change.

evilaidMedlem sedan apr. 2009433 inlägg
#15

stort tack för hjälpen, kör på det, minimierar och förenklar koden avsevärt..

128 ms totalt · 3 externa anrop · v20260731065814-full.2b84b982
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)