2013-05-09 8 views
6

JSP Sarıcı (panellerin her birinde kimlik yok demektir) kullanarak panel çubuklarını (çok satırlı) eklediğim bir uygulama üzerinde çalışıyorum ve bunların içinde ızgaralar var.Kendo Panelbar'ın tüm panellerini bir eylemde çökertmenin bir yolu var mı?

Izgaralar, sayfanın üst kısmındaki liste öğeleri (görüntüler) olarak görüntülenen seçili kişiye özel verileri depolıyor.

Yapmak istediğim, kullanıcı seçili olandan diğerine seçilen kişi seçimini değiştirdiğinde, kendo panel çubuğunun tüm panellerini daraltmasıdır. Bu, yeni kişinin verilerinin yeniden yüklenmesine yardımcı olacaktır, çünkü kullanıcı verileri görmek için paneli seçecek/genişletecekse, olayı yakalarım ve ızgarayı seçilen kişiye dayanarak yeni bir Veri Kaynağı ile yeniden yükleyeceğim.

Umarız buradaki mantıklı, ama PanelBar'ın tüm panellerinin nasıl daraltılacağından emin değilim.

Her türlü öneri?

cevap

11

senin PanelBar arasında idpanel ise, yapın:

$("#panel").data("kendoPanelBar").collapse($("li", "#panelbar")); 

veya

var panelbar = $("#panelbar").data("kendoPanelBar"); 
panelbar.collapse($("li", panelbar.element)); 

yani biz olacak collapse #panelbar altındaki her li öğesi.

DÜZENLEME: Seçimi kaldırmak istiyorsanız, ekleyin:

$(".k-state-selected", panelbar.element).removeClass("k-state-selected"); 
+0

Teşekkürler! Bu hile yaptı :) ama vurgulanan son seçilen panelin arkasında bırakır. Bu seçimi veya vurgulamayı kaldırmanın bir yolu var mı? – nick

+0

Check ** EDIT: ** – OnaBai

+0

Teşekkür ederim OnaBai! – nick

1

HTML Hepiniz paneli daraltmak için bu bloğu kullanabilirsiniz

<ul id="palettePanelBar"> 
      <li id="item1" class="k-state-active"> 
       <!--Some Data--> 
      </li> 
      <li id="item2"> 
       <!--Some Data for second item--> 

      </li> 
</ul> 

JavaScript

var panelBar = $("#palettePanelBar").data("kendoPanelBar"); 
    panelBar.expand($('[id^="item"]')); 
0

ve cevap için bir bonus olarak, sadece tha sonra seçili olarak genişletebilirsiniz Bu şekilde t:

İlgili konular