Toon posts:

[javscript] opvragen van totale <div> ipv innerHTML

Pagina: 1
Acties:

Verwijderd

Topicstarter
Met onderstaande functie wil ik mn tree-menu initialiseren. Op zich werkt alles goed alleen wil ik niet de innerHTML hebben, maar de totale div met de events die zich binnen de desbetreffende div staan. Ik wil namelijk de div zoeken die het containerID bevat die via GET binnen JS opgevraagd wordt. Alleen staat dit containerID binnen een onclick-event en is dus niet te bereiken met behulp van innerHTML.

De vraag: op wat voor manier kan je dit realiseren? Kan je dit gewoon opvragen door middel van het object anders te benaderen? Of zal dit niet gaan en zal ik een constructie moeten gaan bedenken die gebruikt maakt van regular expression om het desbetreffende gedeelte uit de file te halen? Als ik het containerID binnen mn div plaats werkt het script overigens perfect...
JavaScript:
1
2
3
4
5
6
7
8
9
10
function init(){
    for(var i=0; document.getElementsByTagName("div").length>i; i++){
        var id = document.getElementsByTagName("div")[i].id;
        var tekst = document.getElementById(id).innerHTML;
        if (tekst.indexOf("containerID=1") != -1){
            // containerID is gevonden...
            alert (id);
        }
    }
}

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Nast innerHTML heb je dus ook outerHTML.

Maar ik weet niet of ik dat wel een nette oplossing vind voor hetgeen jij wilt. Ik zou eerder kijken om de attributen van de child-elementen op te halen en eventueel te wijzigen.

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 02:40

Pelle

🚴‍♂️


HTML:
1
2
3
4
5
<div id="blab" onclick="vt();">melp</div>

<script>
    alert(document.getElementById("blab").getAttribute("onclick"));
</script>

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 02:40

Pelle

🚴‍♂️

Maar zoals BtM909 al zegt, het is wel een ranzige manier.

Verwijderd

Topicstarter
outerHTML |:( dat is stom dat ik daar niet aangedacht heb... Werkt perfect voor hetgeen ik wil. waarom is dat trouwens een ranzige manier om te gebruiken? Dat zou betekenen dat innerHTML ook ranzig is om hier te gebruiken...

THNX anyway

P.S. Het hele CMS is hier al ontzettend ranzig :(

[ Voor 6% gewijzigd door Verwijderd op 26-08-2003 12:08 ]


  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

innerHTML is een IE toevoeging op de DOM standaard, en maakt daar dus geen onderdeel van uit. Het mooiste is inderdaad om je elementen via de DOM tree op te vragen.
innerHTML wordt wel ondersteund door andere browsers zoals Mozilla en Opera, maar is vaak nogal buggy (zeker in Opera).

Intentionally left blank


Verwijderd

http://www.developer-x.com/content/innerhtml/
mooie discussie hierover alleen een beetje overdreven om het zo op te blazen...
BTW het wordt ondersteund door:
Microsoft Internet Explorer 4+
Microsoft Internet Explorer 5 Mac
Opera 7+ (November 2002)
Mozilla M17+
Netscape 6+
Konqueror 2.2+
IceStorm 5.
iCab 2.x+
MS Pocket IE 3.x+

Verwijderd

Topicstarter
Dat zou betekenen dat ik moet gaan kijken naar de nodeValue etc... Op dit moment werkt het wel goed op Opera 7.11... Dat zal dus een klusje worden als er tijd over is ;)

Bedankt...
Pagina: 1