Bonjour, je vous explique mon problème.. Je ne suis pas capable de faire un length sur un groupe de radiobutton avec explorer 6 mais seulement si je les crées dynamiquement..
Si je fais..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 html <table> <tr> <td> <input type="radio" name="test[]" id="id1" value="10"><label for="id1">test1</label> <input type="radio" name="test[]" id="id2" value="20"><label for="id2">test2</label> <input type="radio" name="test[]" id="id3" value="30"><label for="id3">test3</label> </td> </tr> </table> javascript alert(document.getElementsByName('test[]').length); //affiche 3 OK
mais si je crée les éléments dynamiquement..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 var table=document.getElementById('tbl_id'); var tbody=""; tbody=document.createElement("tbody"); var tr=""; tr=document.createElement("tr"); var td=""; td=document.createElement("td"); element=document.createElement('input'); element.setAttribute('type','radio'); element.setAttribute('name','dynamic[]'); element.setAttribute('id','dynamic_id'); element.setAttribute('value','10'); element_label=document.createElement('label'); element_label.setAttribute('for','dynamic_id'); element_label.appendChild(document.createTextNode('10,00$')); td.appendChild(element); td.appendChild(element_label); tr.appendChild(td); table.appendChild(tr); table.appendChild(tbody); table.getElementsByTagName('tbody')[0].appendChild(tr); alert(document.getElementsByName('dynamic[]').length); //affiche 0 :(
attention: j'ai seulement ce problème avec internet explorer 6 (j'ai pas tester plus bas)
quelqu'un aurais une idée ? merci
Partager