Suppression d'éléments dans un tableau (Array)
Bonjour,
voici mon soucie, je crées dynamquement un liste d'éléments Checkbox, qui ont comme label, les valeurs d'un tableau.
Lorsque qu'une de ces checkbox est cliquée, j'insère cette valeur dans un autre tableau.
Ce que je veux faire, c'est supprimé cette même valeur, lorsque la checkbox est désactivée (selected==false).
Mon soucie c'est que les trois solutions de supression d'éléments de tableaux existants dans Flash (pop, splice et shift) ne correspondent pas à ce que je veux faire.
Voici le code :
Code:
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 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| <div class="bbcode_container">
<div class="bbcode_description">Citation:</div>
<div class="bbcode_quote printable">
<hr />
//tableau des métiers de la catégorie correspondante
var tab_labels = ["Assistant de direction","Consultant com","Consultant e-Business Mark","Directeur général","Directeur commercial", "Directeur adjoint", "Directeur d'agence", "Directeur des ventes","Directeur des exports","Directeur marketing","Dir opérationne", "Télé-secrétariat"];
var listeInfos = [];
//création des composants checkbox autant que de choix de métiers
for (i=0; i<tab_labels.length; i++)
{
tab_labels[i].mavaleur=i;
this.createClassObject(mx.controls.CheckBox, "box"+i, i, {label:tab_labels[i], _y:i*20,_width:259});
}
//création de l'élément écouteur qui va me prévenir lorsqu'une checkbox est cliquée
var checkboxListener = new Object();
checkboxListener.click = function(resultat)
{
elementClique = resultat.target.selected;
contenu_element = resultat.target.label;
for (i=0; i<tab_labels.length; i++)
{
//si une checkbox est cliqué on ajoute le label de la valeur dans le tableau listeInfos
if (elementClique == true)
{
listeInfos.push(contenu_element);
trace (listeInfos);
break;
}//fin if
//par contre et c'est là le soucie, je ne sais pas comment supprimer l'élément déselectionné, de mon tableau (précisément, car pop et shift ne sont pas assez précis)
else if (elementClique == false)
{
break;
}//fin if
}//fin boucle
}//fin ecouteur
for (i=0; i<tab_labels.length; i++)
{
name = "box"+i;
this[name].addEventListener("click", checkboxListener);
}
<hr />
</div>
</div> |