Onclick se déclenche pendant le onload

Bapt -  
xHaMaz Messages postés 120 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour,

Je rencontre un problème pour un projet,

je mon but est que lors de l'appuie sur un <a> / <input> le programme exécute une fonction j'ai donc utilisé onclick que j'ai déjà utilisé de nombreuse fois. Mais là contrairement a d'habitude le onclick se déclenche lors du lancement de la page (comme le onload).

De plus le click ne déclenche plus rien.

Si vous avez une idée je suis pas contre car actuellement je bloque ...

function init_tabCalcul(tabCalcul){
    var div = document.getElementById(  "tableau")
    var table = document.createElement("table")
    var tr = document.createElement("tr")

    for (i in tabCalcul){
        var th = document.createElement("th")
        var a = document.createElement("input")
        a.setAttribute("type","submit");
        a.onclick= creaCalcule("1");
        a.appendChild(document.createTextNode(tabCalcul[i]))
        th.appendChild(a)
        tr.appendChild(th)
    }
    table.appendChild(tr)
    div.appendChild(table)
}

function creaCalcule(calcul){
    vide_Calcul()
    let Empl_Calcule = document.getElementById("Calcul")
    Empl_Calcule.appendChild(document.createTextNode(calcul))


Windows / Firefox 107.0

1 réponse

xHaMaz Messages postés 120 Date d'inscription   Statut Membre Dernière intervention   17
 

Bonjour

Le problème vient du fait que tu utilises la fonction creaCalcule comme une valeur pour onclick au lieu de passer une référence à la fonction.

Fait comme ça plutôt :

a.onclick = function() {
  creaCalcule("1");
};

Vérifie que l'élément "a" est bien ajouté à l'arbre DOM avant de lui affecter un gestionnaire d'événement.

Pareil pour la fonction "vide_Calcul", il faut qu'elle soit bien définie et qu'elle renvoie pas d'erreur.

0