Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[IE] appendChild geeft Javascript error

Pagina: 1
Acties:
  • 533 views sinds 30-01-2008
  • Reageer

  • Peedy
  • Registratie: Februari 2002
  • Laatst online: 06-11-2024
Hoi,

Ik ben bezig met een li element aan een ol toe te voegen. In Opera en Firefox gaat dit prima, alleen in IE werkt het niet. Hij geeft op de laatste regel een foutmelding; "Deze eigenschap of methode wordt niet ondersteund door dit object.".

Ik snap niet wat er fout gaat, want mijn code lijkt gewoon juist. Als ik Google op dit probleem kom ik alleen maar problemen met een tr of td aan een table appenden tegen, maar daar gaat dit niet om. De code staat hieronder (er is iets in geknipt).

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function addProgram() {
    object = document.createElement("li");
    
    input_time = document.createElement("input");
    input_time.setAttribute("name","program_time_"+number_program+"");
    input_time.setAttribute("id","program_time");
    input_time.setAttribute("value","00:00");
    input_time.setAttribute("class","text");
    input_time.setAttribute("onblur","parseTime(this)");
    input_time.setAttribute("type","text");
    input_time.setAttribute("maxlength","5");
    input_time.setAttribute("onclick","this.value=''");
    
    object.appendChild(input_time);

    dagprogramma = document.getElementById('dagprogramma');
    dagprogramma.appendChild(object);
}

  • Stephan11117
  • Registratie: Mei 2004
  • Laatst online: 16:51
IE geeft een regelnummer aan waar de fout optreedt, welke is dat?

Overigens maak je ook niet erg netjes gebruik van variable-namen, 'object' als naam is vragen om problemen, en leer jezelf aan lokale variablen een var prefix te geven.

[ Voor 58% gewijzigd door Stephan11117 op 05-11-2007 19:25 ]


  • NetForce1
  • Registratie: November 2001
  • Laatst online: 28-11 23:34

NetForce1

(inspiratie == 0) -> true

heb even gratis voor je getest ;) en bij mij hielp het om dagprogramma te declareren met var ervoor, dus regel 16 van je snippet wordt dan
JavaScript:
1
var dagprogramma = document.getElementById('dagprogramma');

Sowieso is het netter om lokale (private) variabelen te declareren als var, wat SynchroSteve ook al zegt dus.

De wereld ligt aan je voeten. Je moet alleen diep genoeg willen bukken...
"Wie geen fouten maakt maakt meestal niets!"


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 15:44

crisp

Devver

Pixelated

En verder kan je met setAttribute in IE geen name-attribuut of eventhandlers toekennen - geeft verder geen foutmelding maar werkt echter niet.

Intentionally left blank


  • Peedy
  • Registratie: Februari 2002
  • Laatst online: 06-11-2024
SynchroSteve schreef op maandag 05 november 2007 @ 19:22:
IE geeft een regelnummer aan waar de fout optreedt, welke is dat?

Overigens maak je ook niet erg netjes gebruik van variable-namen, 'object' als naam is vragen om problemen, en leer jezelf aan lokale variablen een var prefix te geven.
De laatste regel, namelijk 'dagprogramma.appendChild(object).

Verder heb je gelijk dat object geen nette var naam is, maar dat kwam omdat ik dit stukje had overgenomen uit een tutorial waar ze object gebruikten.
@NetForce1; ik ga het morgen proberen.
@crisp; thanks voor de tip, was al wat dingetjes tegengekomen die daardoor verklaard worden, zal morgen even zoeken naar een oplossing.

Edit; heb is dus allemaal opgelost, thx :) Overigens heb ik die eventHandlers etc proberen te begrijpen maar ik kom er echt niet uit. dagprogramma.onclick=funciont() blabla werkt ook, dus dat gebruik ik nu maar alhoewel het niet echt netjes is.

[ Voor 13% gewijzigd door Peedy op 07-11-2007 14:56 ]