我对Javascript很新,并且对我正在使用的脚本有疑问。
我目前正在使用以下内容显示基于下拉菜单选项的内容:http://jsfiddle.net/mcgarriers/wjLXk/
然而,我想重新填写此表单,因此如果我选择“显示两个”选项,它将同时显示div1& div2 如果我选择“显示三”,它将显示所有div 。
如何使用jsfiddle中的代码实现此目的?
非常感谢您的帮助。
答案 0 :(得分:0)
我有一点小提琴尝试这个,在mySpecialElements中获取所有子节点,然后根据计数显示它们,这不是最有效的方式。这应该可以帮助你顺利前进。
// display a certain element
function showElement(element) {
element.style.display = '';
//alert(element.id )
var tee = element.id
// var gh = tee.charAt(tee.length-1); // get the int form id will (fail if GT 9)
var gh = tee.slice(-1);
// if id GT 0
if(gh > 0){
var elms = document.getElementById('mySpecialElements');
// get all child nodes within mySpecialElements
for (var i = 0; i < gh ; i++) {
// if DIV display elements by id as block
if(elms.nodeName == "DIV"){
document.getElementById(elms.childNodes[i].id).style.display = "block";
}
}
}
}
顺便说一句,你应该在mySpecialElements中将所有标记元素放在一行上,否则会出现FF问题
<div id="mySpecialElements"><div id="npup0" class="hidden">one div</div><div id="npup1" class="hidden">second div</div><div id="npup2" class="hidden">third div</div>