JavaScript et json_encode
Bonjour,
Dans une liste <select>, depuis onchange="", j'exécute la fonction test();
afin de remplir une seconde liste select.
Code:
<select id="mylist1" onchange="test('<?php echo json_encode($class->scriptData); ?>', 'mylist1', 'mylist2');"></select> <select id="mylist2""></select>
Dans le fichier js:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| function test(data, listA, listB){
var scriptData = data;
//alert(scriptData.element1); // valeur numérique max
select = document.getElementById(listB);
var max = scriptData.element1;
for (var i = 1; i<= max; i++) {
var opt = document.createElement('option');
opt.value = i;
opt.innerHTML = i;
select.appendChild(opt);
}
} |
Ce code devrait fonctionner mais je tourne en rond depuis 1h.. :( le but est d'éviter ce genre de déclaration :
Code:
1 2 3
| <script type="text/javascript">
scriptData = <?php echo json_encode($class->scriptData); ?>;
</script> |
En fait, celui-ci fonctionne déjà ainsi mais je voudrais déclarer la variable scriptData directement dans la fonction test() et non à l'extérieure.
Vous remerciant par avance pour votre réponse,