【问题标题】:Need my Dropdown Menu to show multiple <div> elements onChange需要我的下拉菜单来显示多个 <div> 元素 onChange
【发布时间】:2011-12-04 09:19:05
【问题描述】:

我对 Javascript 非常陌生,并且对我正在使用的脚本有疑问。

我目前正在使用以下下拉菜单选择显示内容:http://jsfiddle.net/mcgarriers/wjLXk/

然而,我想重新调整这个表单,所以如果我选择“显示两个”选项,它将同时显示 div1 和 div2,如果我选择“显示三" 它将显示所有的 div

如何使用 jsfiddle 中的代码实现这一点?

非常感谢您的帮助。

【问题讨论】:

    标签: javascript select menu drop-down-menu


    【解决方案1】:

    我尝试了这个,在 mySpecialElements 中获取所有子节点,然后根据 count 显示它们,这可能不是最有效的方式。这应该可以帮助您顺利上路。

    // 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>
    

    【讨论】:

    • 非常感谢,大卫。我会尽快查看并报告。
    • 刚刚测试过,效果很好。非常感谢大卫,您对此提供的所有帮助。
    猜你喜欢
    • 2012-08-03
    • 2023-04-04
    • 2013-10-20
    • 1970-01-01
    • 2019-03-10
    • 1970-01-01
    • 1970-01-01
    • 2017-12-16
    • 1970-01-01
    相关资源
    最近更新 更多