2015-02-05 50 views
0

我有一個帶約10個面板的Bootstrap手風琴。我有一個需要完成以下複選框:Bootstrap手風琴 - 添加和刪除父母

選中 - 所有面板得到關閉,只有一個面板顯示在一個時間(即:家長如此定義:當一個面板打開另一個關閉)

檢查 - 所有面板打開並獨立行動(即:沒有父定義)

該文檔不包括這種情況,我不知道如何完成此操作。我試過以下(使用引導文件作爲我的HTML代碼中顯示的手風琴例子)......在運行時複選框選中獲得

代碼:

$(".collapse").collapse({ parent: "#accordion", toggle: false }, "hide"); 

代碼的運行復選框時得到檢查:

$(".collapse").collapse({ toggle: false }, "show"); 

但是,這似乎並沒有工作。例如,在運行第二個代碼以顯示所有面板時,沒有任何更改。我似乎在這裏錯過了一些東西。

回答

1

您可以通過切換a上的data-parent屬性來完成此操作,該屬性使用jQuery進行摺疊/展開。加入這樣的事情(假設你的複選框的ID allowmulti):

$('#allowmulti').click(function() { 
    if(this.checked) { 
    $('#accordion a').removeAttr('data-parent'); 
    } else { 
    $('#accordion a').attr('data-parent', '#accordion'); 
    } 
}); 

Bootply here

+0

遺憾的是,似乎不工作100%...嘗試在你的Bootply例如下面...點擊所有三個面板(顯示它們),然後單擊複選標記...您會注意到,即使data-parent屬性已被刪除,面板仍會像父屬性未被刪除一樣運行。 – 2015-02-05 16:43:31