【发布时间】:2013-03-08 15:36:28
【问题描述】:
这在 chrome 和 IE 中不起作用。我不太擅长 Javascripting,所以我不知道要寻找什么。那么我能做些什么来完成这项工作呢?我已经在这里搜索以找到一些解决方案,但没有运气。
Javascript 代码:
function show(id) {
var element = document.getElementById(id);
element.style.display = "";
}
function hide(id) {
var element = document.getElementById(id);
element.style.display = "none";
}
function hideAll() {
hide('child1');
hide('child2');
hide('child3');
hide('child4');
hide('child5');
}
HTML 代码
<select name="parent" id="parent">
<option value="0" selected>Please choose</option>
<option value="1" onclick="hideAll(); show('child1');">Parent 1</option>
<option value="2" onclick="hideAll(); show('child2');">Parent 2</option>
<option value="3" onclick="hideAll(); show('child3');">Parent 3</option>
<option value="4" onclick="hideAll(); show('child4');">Parent 4</option>
<option value="5" onclick="hideAll(); show('child5');">Parent 5</option>
</select>
</p>
<select name="child1" id="child1" style="display:none">
<option value="1">Child1 - 1</option>
<option value="2">Child1 - 2</option>
<option value="3">Child1 - 3</option>
<option value="4">Child1 - 4</option>
<option value="5">Child1 - 5</option>
</select>
<select name="child2" id="child2" style="display:none">
<option value="1">Child2 - 1</option>
<option value="2">Child2 - 2</option>
<option value="3">Child2 - 3</option>
<option value="4">Child2 - 4</option>
<option value="5">Child2 - 5</option>
</select>
<select name="child3" id="child3" style="display:none">
<option value="1">Child3 - 1</option>
<option value="2">Child3 - 2</option>
<option value="3">Child3 - 3</option>
<option value="4">Child3 - 4</option>
<option value="5">Child3 - 5</option>
</select>
<select name="child4" id="child4" style="display:none">
<option value="1">Child4 - 1</option>
<option value="2">Child4 - 2</option>
<option value="3">Child4 - 3</option>
<option value="4">Child4 - 4</option>
<option value="5">Child4 - 5</option>
</select>
<select name="child5" id="child5" style="display:none">
<option value="1">Child5 - 1</option>
<option value="2">Child5 - 2</option>
<option value="3">Child5 - 3</option>
<option value="4">Child5 - 4</option>
<option value="5">Child5 - 5</option>
</select>
【问题讨论】:
-
请定义“不起作用”。
-
预期的行为是什么。它在任何浏览器中的行为是否符合您的预期。
-
JSFiddle 这里:jsfiddle.net/B5Zvk
-
当我选择父 1 时,child1 不会弹出。但它确实在歌剧中..
-
您可能需要考虑使用一些 javascript 框架(如 jQuery)来执行此类任务
标签: javascript html google-chrome