大家好,最近我遇到了一個問題。我無法使用下面的代碼將選項添加到選擇框,也無法在IE中清除它們。下面的代碼有什麼問題嗎?如何正確清除並添加選項以使用Internet Explorer?
blockSelect.innerHTML = '<option></option>';
for (var i in data.DATA) {
console.log(data);
var option = dojo.create('option', { value: data.DATA[i][0] }, blockSelect);
option.label = data.DATA[i][0];
}
我真的不知道爲什麼這不是在IE中工作。
謝謝
對於初學者,JavaScript沒有塊級的範圍。 `for`循環的每次迭代都會覆蓋`option`的前一個值。你可以發佈更多的代碼嗎? – 2010-12-08 01:21:55
它不在塊外使用,所以它沒關係 – 2010-12-08 01:52:22
@Matt:根本就沒有問題。變量實例化在任何語句執行之前發生。以下兩個片段是等價的:`for(var i = 0; i <3; ++ i){var x = i; }`和`var x; for(var i = 0; i <3; ++ i){x = i; }` – 2010-12-08 16:56:26