這是令人困惑的。當你說「表單對象」時,你的意思是「<select>
元素」?如果沒有,你的代碼將不起作用,所以我會假設你的form
變量實際上是對<select>
元素的引用。你爲什麼要重寫這段代碼?自1996年以來,你所有的腳本瀏覽器都能夠運行,並且不會很快停止工作。用jQuery做這件事會立即讓你的代碼變得更慢,更容易出錯並且在瀏覽器中不兼容。
下面是一個使用你當前的代碼爲出發點和填充<select>
元從一個對象的函數:
<select id="mySelect"></select>
<script type="text/javascript>
function populateSelect(select, optionsData) {
var options = select.options, o, selected;
options.length = 0;
for (var i = 0, len = optionsData.length; i < len; ++i) {
o = optionsData[i];
selected = !!o.selected;
options[i] = new Option(o.text, o.value, selected, selected);
}
}
var optionsData = [
{
text: "Select a city/town in Sweden",
value: ""
},
{
text: "Melbourne",
value: "Melbourne",
selected: true
}
];
populateSelect(document.getElementById("mySelect"), optionsData);
</script>
可能的重複,http://stackoverflow.com/q/740195/425313 – 2013-04-24 03:28:22