Je tente de repeupler un menu déroulant. Je fais un appel ajax pour récupérer myList. Lorsque j'ai la nouvelle liste, je supprime toutes les options de l'élément select et j'insère les nouvelles valeurs (environ 100 options). Cela fonctionne très bien sur les versions ultérieures d'IE et Firefox; l'actualisation est presque instantanée. Cependant, sur IE6, ces opérations ralentissent vraiment le navigateur. La liste déroulante devient presque animée lorsque les options sont supprimées, et cela continue pendant plusieurs secondes. Existe-t-il un moyen d'accélérer cela en dehors de la comparaison de l'ancienne liste avec la nouvelle et en supprimant/ajoutant uniquement les éléments qui ont changé?Suppression des options de select dans IE6
$("#myselect").children.remove();
$.each(myList, function(i, val) {
$("<option>").attr("value", val.myID)
.text(val.myText)
.appendTo("#myselect");
});
Vous pouvez essayer de masquer le contrôle entre deux modifications pour vous assurer qu'il n'essaie pas de rendre les modifications. – NibblyPig
Btw, vous pouvez remplacer $ ('# mySelect'). Children(). Remove() avec $ ('mySelect'). Empty(); –