4
我正在使用JavaScript進行編程,並且我發現一些問題必須由專家對drop-down
框進行回答。基於另一個下拉框的值更改了下拉框選項
的情況是:
我有一個drop-down
框,給出了各省的一些可能的選項,同時僅取決於什麼是在各省drop-down
選擇的第二個(鎮)。
JavaScript中有一種方法,當我在省份之間選擇時,第二個drop-down
給出了所選省份的選項嗎?
我正在使用JavaScript進行編程,並且我發現一些問題必須由專家對drop-down
框進行回答。基於另一個下拉框的值更改了下拉框選項
的情況是:
我有一個drop-down
框,給出了各省的一些可能的選項,同時僅取決於什麼是在各省drop-down
選擇的第二個(鎮)。
JavaScript中有一種方法,當我在省份之間選擇時,第二個drop-down
給出了所選省份的選項嗎?
這是一個簡單的例子,讓你開始。
它通過將change
事件的事件偵聽器附加到省下拉菜單中,然後通過provs
對象查找該省的哪些城鎮。
請參閱評論以獲取每行內容的詳細說明。
window.onload = function() {
// provs is an object but you can think of it as a lookup table
var provs = {
'British Columbia': ['Victoria', 'Sanitch'],
'Ontario': ['Bracebridge', 'Waterloo']
},
// just grab references to the two drop-downs
prov_select = document.querySelector('#prov'),
town_select = document.querySelector('#town');
// populate the provinces drop-down
setOptions(prov_select, Object.keys(provs));
// populate the town drop-down
setOptions(town_select, provs[prov_select.value]);
// attach a change event listener to the provinces drop-down
prov_select.addEventListener('change', function() {
// get the towns in the selected province
setOptions(town_select, provs[prov_select.value]);
});
function setOptions(dropDown, options) {
// clear out any existing values
dropDown.innerHTML = '';
// insert the new options into the drop-down
options.forEach(function(value) {
dropDown.innerHTML += '<option name="' + value + '">' + value + '</option>';
});
}
};
<select id="prov"></select>
<select id="town"></select>
有你累了什麼? – meskobalazs
我認爲「必須由專家回答」有點強,谷歌本來可能有你在那裏 – MuppetGrinder
呦可以在這裏找到答案全部已準備好: http://stackoverflow.com/questions/5686735/populate-one-dropdown基於選擇的另一種Alltrough,我會使用Jquery來簡化。 – MrKekson