我有一個下拉菜單,當我選擇一個選項時,它會創建一個動態下拉菜單。到現在爲止還挺好。如何根據另一個動態下拉列表的值創建動態下拉列表?
但我想創建另一個動態下拉列表,現在基於其他動態下拉列表的值。我該怎麼做?
第一個動態下拉工作,我猜第二個不工作,因爲動態變量「div」沒有靜態ID。有人可以幫我解決我的問題嗎?
下面是代碼:
<form name="Inv">
<table>
<tr><td colspan="4" align="center" bgcolor="#FF8000"><h2>Inventory Request</h2></td></tr>
<tr><td colspan="4" bgcolor="#D8D8D8" style="height: 20;"></td></tr>
<tr>
<td align="center" bgcolor="#D8D8D8"><b>Name (type)</b></td>
<td align="center" bgcolor="#D8D8D8"><b>Subtype</b></td>
<td align="center" bgcolor="#D8D8D8"><b>Description</b></td>
<td align="center" bgcolor="#FFFF00"><b>Quantity</b></td>
</tr>
<tr>
<td bgcolor="#D8D8D8">
<select id="mainMenu" onchange="displayMenus()" size="1">
<option value="0" id="0">Seleccione un equipo</option>
<option value="modules" id="mod">Modules</option>
<option value="microinverters" id="mi">MicroInverters</option>
更多的選擇......
</select></td>
<td bgcolor="#D8D8D8"><div id="myDiv" onchange="displayMenus2()" size="1"></div>
</td>
<td bgcolor="#D8D8D8"><div id="myDiv2"></div>
</td>
<td><input type="number" id="quantity"/>
</td>
</tr>
</table>
</form>
的JavaScript:
<script type="text/javascript">
var created = 0;
function displayMenus() {
if (created == 1) {
removeDrop();
}
//Call mainMenu the main dropdown menu
var mainMenu = document.getElementById('mainMenu');
//Create the new dropdown menu
var whereToPut = document.getElementById('myDiv');
var newDropdown = document.createElement('select');
newDropdown.setAttribute('id',"newDropdownMenu");
whereToPut.appendChild(newDropdown);
if (mainMenu.value == "modules") {
//add option
var optionBovietM=document.createElement("option");
optionBovietM.text="BovietModule";
optionBovietM.value="BovietModule";
newDropdown.add(optionBovietM,newDropdown.options[null]);
//add option
var optionHanwhaM=document.createElement("option");
optionHanwhaM.text="HanwhaQCellModule";
newDropdown.add(optionHanwhaM,newDropdown.options[null]);
} else if (mainMenu.value == "microinverters") {
var optionEnphaseMI=document.createElement("option");
optionEnphaseMI.text="EnphaseMicroInverters";
newDropdown.add(optionEnphaseMI,newDropdown.options[null]);
} else if (mainMenu.value == "enphase") {
所有選項後...
}
created = 1
}
function removeDrop() {
var d = document.getElementById('myDiv');
var oldmenu = document.getElementById('newDropdownMenu');
d.removeChild(oldmenu);
}
</script>
沒有一款Android人LOL – josedlujan