AppendChild getElementsByName onclick

Résolu
Fallentree Messages postés 2309 Date d'inscription   Statut Membre Dernière intervention   -  
Fallentree Messages postés 2309 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je cherche a inserer des lignes a un tableau...
Probleme je n arrive pas a attribuer un evenement a un input inserer par javascript ...

voila le bout de code :
function Add_Item() {     

 var table = document.getElementById("tb_devis");
     var rowCount = table.rows.length;
     var row = table.insertRow(rowCount);
     window.status="rowCount="+rowCount;
     var cell1 = row.insertCell(0);
     cell1.innerHTML = rowCount;
                                                        
var namer=new Array("Item","Qantite","Prix HT","Total");
var fonct=new Array("function (){call();}","javascript:alert();","javascript:Add_Item();","");

for (i=1;i<=namer.length;i++) {
     var cell2 = row.insertCell(i);
     if (document.all){  // pour IE                            
        var element1 = document.createElement("<input name='"+namer[i-1]+"'>");
        }
        else{ // pour FF et autres navigateurs
        var element1 = document.createElement("input"); 
        element1.name=namer[i-1];
        }
     element1.type = "text";
     element1.value=element1.name;
     element1.onclick = fonct[i-1];//function(){alert();}; // de cette facon OK
     cell2.appendChild(element1);
}

var cell1 = row.insertCell(namer.length+1);
     cell1.innerHTML  = '<a style="cursor:pointer;" onclick="javascript:Add_Item();">'
     cell1.innerHTML += '<img src="./Include/add.jpg" title="add" width="20" height="20" align="middle" border="0" />';
     cell1.innerHTML += '</a>';

     var tmp_name = document.getElementsByName(namer[0])[rowCount-1];
     tmp_name.value=document.getElementsByName(namer[0]).length;
     tmp_name.onclick=fonct[0]; // mais pas de celle la 
 }


Une idée ???
Merci de votre lecture.

5 réponses

Fallentree Messages postés 2309 Date d'inscription   Statut Membre Dernière intervention   209
 
var cell1 = row.insertCell(namer.length+1);
     cell1.innerHTML  = '<a style="cursor:pointer;" onclick="javascript:Add_Item();">'
     cell1.innerHTML += '<img src="./Include/add.jpg" title="add" width="20" height="20" align="middle" border="0" />';
     cell1.innerHTML += '</a>';


ca aussi ca ne fonctionne pas .
0
Fallentree Messages postés 2309 Date d'inscription   Statut Membre Dernière intervention   209
 
ok pour innerhtml
cell1.innerHTML  = '<a style="cursor:pointer;" onclick="javascript:Add_Item();"><img src="./Include/add.jpg" title="add" width="20" height="20" align="middle" border="0" /></a>';
0
Fallentree Messages postés 2309 Date d'inscription   Statut Membre Dernière intervention   209
 
element1.onclick = fonct[i-1];//function(){alert();}; // de cette facon OK
plutot
element1.onclick =function(){alert();}; // de cette facon OK
0
Fallentree Messages postés 2309 Date d'inscription   Statut Membre Dernière intervention   209
 
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Fallentree Messages postés 2309 Date d'inscription   Statut Membre Dernière intervention   209
 
ou
eval( "element1.onclick = "+fonct[i-1]+";");
et
var fonct=new Array("call","","Add_Item",""); 
0