我正在嘗試重新填充下拉菜單。我正在調用ajax來檢索myList。當我有新的列表時,我從select元素中刪除所有選項並插入新值(大約100個選項)。這適用於IE和Firefox的更高版本;刷新幾乎是即時的。但是,在IE6上,這些操作確實會降低瀏覽器的速度。下拉框幾乎變成動畫,因爲選項已從中刪除,並持續幾秒鐘。除了將舊列表與新列表進行比較並僅刪除/添加已更改的項目之外,是否有任何方法可以加快速度?從IE6中選擇刪除選項
$("#myselect").children.remove();
$.each(myList, function(i, val) {
$("<option>").attr("value", val.myID)
.text(val.myText)
.appendTo("#myselect");
});
您可以嘗試在更改它之間隱藏控件,以確保它不會嘗試呈現更改。 – NibblyPig 2009-11-30 17:19:33
順便說一句,你可以用$('mySelect')替換$('#mySelect')。children()。remove()。 – 2009-11-30 17:24:49