Avatar billede sho Nybegynder
10. november 2011 - 21:16 Der er 14 kommentarer

Udskifte alt indenfor en <tr> med en bestemt klasse

Hej Eksperter,

jeg har en side, hvor jeg et sted har teksten:

<tr class='klassenavn'>Her er en tekst<img src=''><a href='#">Link</a></tr>

Altså en <tr> med en masse indhold, og eneste reference til den er class, som kun bruges dette ene sted

Siden er autogenereret, så jeg kan ikke gøre andet ved indholdet, end at lave et script på siden, der automatisk udskifter alt inden for den <tr> med en bestemt klasse.

Men kan det lade sig gøre? Jeg har adgang til Jquery på siden, hvis det er nogen hjælp.

Det er ikke noget, der haster - men jeg skal helst bruge svaret i aften ;-)
Avatar billede olebole Juniormester
10. november 2011 - 22:05 #1
<ole>

Har tabellen evt. en ID? Eller ligger den i et element med en ID?

Uanset, hvad du bruger til at finde rækken med, er det en rigtig god ting at indsnævre søgningen så meget som muligt.

/mvh
</bole>
Avatar billede olebole Juniormester
10. november 2011 - 22:07 #2
- og er det den eneste række med det className?
Avatar billede sho Nybegynder
10. november 2011 - 22:11 #3
Tabellen har også kun en class, men den er kun brugt i den ene tabel.

Og ja, det er den eneste række med den class.

(Og når olebole har fået fært af mit spørgsmål er jeg sikker på, at kan det lade sig gøre, så ved han det! Tak, hvem der end hørte min bøn om hjælp! ;-) )
Avatar billede JensPeterSvensson Nybegynder
10. november 2011 - 22:29 #4
Virker dette ikke?
$(".klassenavn").html("<td>JIBBERISH</td>");
Avatar billede olebole Juniormester
10. november 2011 - 22:31 #5
En velperformende metode:


function getByClass(sCl, sTag, oPar) {
    var a = (oPar||document).getElementsByTagName(sTag||"*"),
    i = a.length-1;
    do {
        if (a[i].className==sCl) return a[i];
    } while (i--);
}

Avatar billede olebole Juniormester
10. november 2011 - 22:33 #6
sCl = ClassName
sTag = TagName (Optional)
oPar = ParentNode (Optional) - eller rettere et omkransende element så tæt på det søgte element, som muligt
Avatar billede olebole Juniormester
10. november 2011 - 22:39 #7
- og den kunne bruges som følger:


getByClass("klassenavn", "tr").innerHTML = " ... ";


- men pas på med innerHTML, der kan være seriøst destruktiv! I denne situation, hvor du udskifter al indholdet af elementet, kan den bruges - men den kræver stor omtanke og forsigtighed.

Brug således aldrig innerHTML på denne måde:

ELEMENT.innerHTML += " ... ";
Avatar billede sho Nybegynder
10. november 2011 - 22:40 #8
Ole, hvor indsætter jeg den tekst, jeg vil have udskiftet alt imellem <tr class=klassenavn"></tr> med?
Avatar billede sho Nybegynder
10. november 2011 - 22:41 #9
Du kom mig i forkøbet - tester lige
Avatar billede sho Nybegynder
10. november 2011 - 22:47 #10
Hmm, det burde virke, men kræver lidt mere research. Min krop har ikke godt af mere kaffe for i dag, så jeg gemmer det til i morgen, når mit hoved er lidt mere friskt!

Men indtil videre tak for hjælpen til jer begge!!
Avatar billede olebole Juniormester
10. november 2011 - 23:25 #11
Research: "To change the contents of the table, tFoot, tHead, and tr elements, use the table object model described in Building Tables Dynamically. However, to change the content of a particular cell, you can use innerHTML."

Det betyder, at du i IE skal bruge DOM for at skifte indholdet i et TR element
Avatar billede olebole Juniormester
10. november 2011 - 23:27 #12
Lidt resesarch: "To change the contents of the table, tFoot, tHead, and tr elements, use the table object model described in Building Tables Dynamically. However, to change the content of a particular cell, you can use innerHTML."

- hvilket betyder, du i IE skal bruge DOM for at udskifte indholdet af et TR element
Avatar billede olebole Juniormester
10. november 2011 - 23:32 #13
Baaahhhhh ... E åd øjensynlig mit første indlæg, og 3-4 reloads fik det ikke frem. Først efter andet forsøg kom det frem. Kunne IDG mon ikke finde ud af at ansætte en udvikler som afløsning for deres indviklere og afviklere ...?!??!!!

Man må vel efterhånden glæde sig over, at der trods alt er huller i deres inkompetence!
Avatar billede sho Nybegynder
25. september 2013 - 12:22 #14
@olebole
Det er vist på tide at lukke den her :-(
Dit svar hjalp mig faktisk, så vil du ikke for god ordens skyld smide et svar og få point?

Og hvis du skulle kede dig, så har jeg et nyt problem, som jeg har på fornemmelsen, at du kan gennemskue på et øjeblik... det er # 986089 :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester