login  Naam:   Wachtwoord: 
Registreer je!
 Forum

html aan node toevoegen voordat deze in de DOM komt (Opgelost)

Offline Martijn - 18/06/2013 10:33 (laatste wijziging 18/06/2013 11:13)
Avatar van MartijnCrew PHP Ik wil het volgende resultaat (maar dan dus werkend):

  1. var elText = document.createElement('span');
  2. elText = elText.innerHTML('<p>asd</p>');


Maar dit geeft aan dat innerHTML een undefined functie is.

  1. var elText = document.createElement('span');
  2. elText = elText.appendChild( document.createTextNode('<p>asd</p>') );

Het bovenstaande werkt wel, maar dan werkt mn html niet, wat wel de bedoeling is.

Ik zoek dus iets als document.createHtmlNode. Iemand?

edit:
Ik doe het nu zo met jQuery, maar heb de voorkeur aan native JS, dus mocht iemand nog iets hebben:
  1. var elText = $( document.createElement('span') ).html( val.text );

2 antwoorden

Gesponsorde links
Offline WouterJ - 18/06/2013 15:58
Avatar van WouterJ HTML gevorderde Het is vrij simpel, je doet 2 dingen fout waarvoor je waarschijnlijk voor 1 ding een error krijgt:

1) innerHTML is een property en geen method van het DomNode element. Dus elText.innerHTML = '<p>asd</p>'
2) inline elementen (span) mogen geen block elementen (paragraph) als child hebben.
Bedankt door: Martijn
Offline Martijn - 18/06/2013 16:21
Avatar van Martijn Crew PHP Oh wow, dat van innerHTML had ik moeten weten. En je punt twee is ook correct, dit eindigde zo in mijn voorbeeld, zo had ik het niet zelf. Zou trouwens ook niet een error geven op javascript niveau, mogelijk merk je het nieteens totdat je test of je w3c valid bent
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.244s