[JS] Onclick-event handling troubles

Pagina: 1
Acties:

  • Stephan11117
  • Registratie: Mei 2004
  • Laatst online: 13-02 06:32
Dit werkt: (ik krijg een alert als ik een onclick event afvuur op de knop)

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
function parseDelButton(condition) {
    button = document.createElement('input');
    button.setAttribute('type','button');
    button.setAttribute('value','Verwijder');
    button.setAttribute('onclick', "del_button_click()");
    return button;
}

function del_button_click() {
    alert('klik!');
}


Dit werkt niet: (geen alert)
JavaScript:
1
2
3
4
5
6
7
8
9
function parseDelButton(condition) {
    button = document.createElement('input');
    button.setAttribute('type','button');
    button.setAttribute('value','Verwijder');
    button.onclick = function() {
        alert('klik!');
    }
    return button;
}



Wat doe ik in code fragment 2 verkeerd? In geen enkele browser wordt er een alert getoont.

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 18:49

crisp

Devver

Pixelated

Beide voorbeelden werken in Firefox, je eerste veerbeeld werkt niet in IE.
Technisch gezien is een onclick-attribute ook geen HTML-valueattribute maar een interface-attribute; derhalve doe je er beter aan daar de juiste methoden voor te gebruiken ( addEventHandler/attachEvent ) of zo (functie-referentie):
JavaScript:
1
button.onclick = delbutton_click;

Intentionally left blank


  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 09-02 10:42

Clay

cookie erbij?

als ik met
JavaScript:
1
[HTMLElement].appendChild(parseDelButton());

die 2e button implementatie uitvoer en daarna op de button klik krijg ik gewoon een alert hoor. Hoe voeg jij die button dan aan de pagina toe?

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin