2014-03-12 233 views
3

我有一個下拉菜單,其中包含一個包含其自己的下拉菜單的下拉菜單。只要我點擊內部下拉菜單,父級下拉菜單關閉。如何防止父母下拉關閉?以及如何解決多個嵌套下拉菜單的相同問題? 代碼:如何防止引導下拉菜單單擊關閉父下拉菜單

<div class="dropdown selectDropdownDiv"> 
    <a data-toggle="dropdown" href="#" class="btn selectDropdown">--<span class="caret pull-right"></span></a> 
    <div class="dropdown-menu keep_open" role="menu" aria-labelledby="dLabel" id="keywordDropdown"> 
    <div class="dropdown selectDropdownDiv"> 
     <a data-toggle="dropdown" href="#" class="btn selectDropdown">--<span class="caret pull-right"></span></a> 
     <ul class="dropdown-menu keep_open" role="menu" aria-labelledby="dLabel"> 
     <li class="checkbox marginl5"> 
      <label> 
      <span class="checkLabel">Source X</span><input type="checkbox"> 
      </label> 
     </li> 
     <li class="checkbox marginl5"> 
      <label> 
      <span class="checkLabel">Source X</span><input type="checkbox"> 
      </label> 
     </li> 
     </ul> 
    </div> 
    </div> 
</div> 

我正在使用Twitter Bootstrap。任何幫助,將不勝感激。

+0

由於子菜單可能包含「複選框」,「單選按鈕」等設置其他選項。我想設置/取消設置多個複選框/單選按鈕。但只要我點擊內部下拉菜單,父母就會關閉,剝奪我上述的奢侈品。 – myusuf

+0

你有沒有找到解決方案? – roydukkey

+0

不需要。最後,我必須更改用戶界面,以便我們只有一個下拉菜單,然後切換div。 – myusuf

回答

0

這應該有效。它停止將click事件傳播到控制隱藏菜單的引導事件。

$("#parent-element").on("click", ".dropdown-menu", function (e) { 
    $(this).parent().is(".open") && e.stopPropagation(); 
});