Ram*_*Ram 3 html javascript drop-down-menu
我有几个下拉菜单,它们的值很容易获得,如下所示。
下拉列表 1:
<select id="a">
<option value="1">Bike</option>
<option value="2">Car</option>
<option value="3">Bus</option>
<option value="4">Cycle</option>
<option value="5">Wagon</option>
</select>
Run Code Online (Sandbox Code Playgroud)
下拉列表 2:
<select id="b">
<option value="1">2 wheel</option>
<option value="2">4 wheel</option>
<option value="3">6 wheel</option>
</select>
Run Code Online (Sandbox Code Playgroud)
我需要根据从第一个下拉列表中选择的值更改第二个下拉值。例如:
对我来说唯一可用的选择是使用 JavaScript。我试过如下,但它不起作用。请帮助指出我遗漏了什么/做错了什么。
HTML:
<select id="a" onchange="change();">
<option value="1">Bike</option>
<option value="2">Car</option>
<option value="3">Bus</option>
<option value="4">Cycle</option>
<option value="5">Wagon</option>
</select>
<select id="b">
<option value="1">2 wheel</option>
<option value="2">4 wheel</option>
<option value="3">6 wheel</option>
</select>
Run Code Online (Sandbox Code Playgroud)
JS:
function change() {
if (document.getElementById('a').value == '1')
document.getElementById("b").value = '1';
else if (document.getElementById('a').value == '2')
document.getElementById("b").value = '2';
else if (document.getElementById('a').value == '3')
document.getElementById("b").value = '3';
else if (document.getElementById('a').value == '4')
document.getElementById("b").value = '1';
else if (document.getElementById('a').value == '5')
document.getElementById("b").value = '2';
};
Run Code Online (Sandbox Code Playgroud)
编辑:为了更具体地了解我需要什么,我编辑了上面的示例。
在你的解释之后,我会这样做:
window.onload=function() {
document.getElementById("a").onchange=function() {
document.getElementById("b").value=this.options[this.selectedIndex].getAttribute("data-sync");
}
document.getElementById("a").onchange(); // trigger when loading
}Run Code Online (Sandbox Code Playgroud)
<select id="a">
<option value="1" data-sync="1">Bike</option>
<option value="2" data-sync="2" selected>Car</option>
<option value="3" data-sync="3">Bus</option>
<option value="4" data-sync="1">Cycle</option>
<option value="5" data-sync="2">Wagon</option>
</select>
<select id="b">
<option value="1">2 wheel</option>
<option value="2">4 wheel</option>
<option value="3">6 wheel</option>
</select>Run Code Online (Sandbox Code Playgroud)
实际上你的代码也能工作——也许你的浏览器不喜欢函数名 change
function change() {
if (document.getElementById('a').value == '1')
document.getElementById("b").value = '1';
else if (document.getElementById('a').value == '2')
document.getElementById("b").value = '2';
else if (document.getElementById('a').value == '3')
document.getElementById("b").value = '3';
else if (document.getElementById('a').value == '4')
document.getElementById("b").value = '1';
else if (document.getElementById('a').value == '5')
document.getElementById("b").value = '2';
};Run Code Online (Sandbox Code Playgroud)
<select id="a" onchange="change();">
<option value="1">Bike</option>
<option value="2">Car</option>
<option value="3">Bus</option>
<option value="4">Cycle</option>
<option value="5">Wagon</option>
</select>
<select id="b">
<option value="1">2 wheel</option>
<option value="2">4 wheel</option>
<option value="3">6 wheel</option>
</select>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11903 次 |
| 最近记录: |