2009-11-06 66 views
1

下拉列表本身有Javascript清除功能嗎?Javascript清除

ddlist.Clear();或者那種類似的東西?

+0

你期望clear()做什麼?從列表中刪除所有選項? – Triptych 2009-11-06 18:38:13

+0

我被告知有一個ddlist.clear它將清除所有您正在參考的ddlist中的所有值 – PositiveGuy 2009-11-06 18:44:09

回答

5

如果 「清除值」 你意思是刪除所有下拉元素,最快最簡潔的方法是:

ddlist.options.length = 0 
+0

美麗答案 – 2009-11-06 18:57:49

+0

這是正確的。無需循環! – 2009-11-06 18:59:53

+0

不錯!很乾淨 – PositiveGuy 2009-11-06 19:17:36

0

對於數組,你可以使用

arr = []; 

的元素,等等,你需要使用一個框架或刪除每個元素的循環

5

沒有,沒有。但你可以做到這樣的:

function clearDropDownList(ddl) { 
    while (ddl.hasChildNodes()) { 
     ddl.removeChild(ddl.lastChild); 
    } 
} 
+0

這不起作用。 – PositiveGuy 2009-11-06 19:03:30

6

我建議你檢查出的jQuery,它具有類似於你在找什麼一些功能,可以幫助一般的JavaScript開發更容易,表現接近同在多個瀏覽器上。

http://docs.jquery.com/Manipulation/empty

2

您可以設置innerHTML來 「」,或刪除所有編程選項孩子的:

var element = document.getElementById("selectId"); 
element.innerHTML = ""; 

或者:

var element = document.getElementById("selectId"); 
while (element.firstChild) { 
    element.removeChild(element.firstChild); 
} 
+0

+1爲簡明起見。 – 2009-11-06 18:43:02

0

短。

while (ddlist.options.length) 
    ddlist.options.remove(0);