显示/隐藏问题
Show/hide issue
<script>
function unhide(divID) {
var item = document.getElementById(divID);
if (item) {
item.className=(item.className=='hidden')?'unhidden':'hidden';
}
}
</script>
<style>
.hidden { display: none; }
.unhidden { display: block; }
</style>
<div class="answerswers">
<ol>
<li>
<input type="radio" name="q1" id="q1-a" onclick="unhide('answerq1a')"/>John
</li>
<li>
<input type="radio" name="q1" id="q1-b" onclick="unhide('answerq1b')"/>Paula
</li>
<li>
<input type="radio" name="q1" id="q1-c" onclick="unhide('answerq1c')"/>Henal
</li>
<li>
<input type="radio" name="q1" id="q1-d" onclick="unhide('answerq1d')"/>Malc
</li>
</ol>
</div>
<div id="answerswerq1a" class="hidden">
<textarea class="widthninetyfivepercent" rows="4" name="optionA" id="1-A" maxlength="300" value=""/>Your answer is correct, John is 20.</textarea>
</div>
这工作正常,但唯一的问题是,我正在使用单选按钮,我想单击一下即可显示我的div(确实如此(,但是当单击另一个单选按钮时,我希望它隐藏所有其他未隐藏的div,并且一次只显示一个。
我怎样才能以最简单的方式做到这一点?
您可能会发现有些东西是以奇怪的方式编写的,但那是因为我需要使用 CMS 对其进行编辑,并且它只会以特定的方式拾取它。这也是我使用这个特定的显示/隐藏的原因。它很短,它适用于我编写所有内容的方式。
问候
约翰·瓦斯。
无需更改您的 html 或代码 演示
<input type="radio" name="q1" id="q1-a" onclick="unhide(this)" />
<input type="radio" name="q1" id="q1-b" onclick="unhide(this)" />
<input type="radio" name="q1" id="q1-c" onclick="unhide(this)" />
<input type="radio" name="q1" id="q1-d" onclick="unhide(this)" />
用
var currentShown = "";
function unhide(rad) {
var id = "answerswer"+rad.id.replace("-","");
var answer = document.getElementById(id);
if (answer) {
var current = document.getElementById(currentShown);
if (current) current.className="hidden";
currentShown=id;
answer.className="unhidden";
}
}
相关文章:
- JQuery上下文菜单显示/隐藏问题
- mouseOver上的隐藏图像问题
- 隐藏javascript滑块的问题
- ajax显示隐藏滚动到最重要的问题
- jQuery隐藏函数出现问题
- 自动隐藏地址栏问题
- jQuery隐藏/显示问题
- 对表演和隐藏有一些问题.如何解决这个问题
- Javascript初学者:setTimeout隐藏/显示问题
- 顶级/下级菜单上的隐藏()延迟问题,但当鼠标再次进入时取消隐藏()
- IE8显示可滚动表的隐藏问题
- Jquery 显示/隐藏常见问题解答,文本被覆盖
- 在弹出式显示和隐藏上遇到样式问题
- 常见问题页面.显示和隐藏内容,JQuery和CSS问题
- 我的显示/隐藏功能代码出了什么问题
- 在移动 Safari 中隐藏/显示内联 SVG 时遇到问题
- Javascript遇到问题.隐藏后再显示
- ng将问题隐藏在angular js中
- Firefox 3.6性能问题&隐藏的提振
- Internet explorer css问题.(隐藏填充)