JSF'de benim açılanmda ağaç benzeri bir yapı görüntülemek istiyorum. Temel olarak, seçilen öğeler bir hiyerarşi içerisindedir ve bunun, açılır menüde belirgin olmasını isterim.JSF Tree bir açılır kapanır içinde
Mümkün mü?
JSF'de benim açılanmda ağaç benzeri bir yapı görüntülemek istiyorum. Temel olarak, seçilen öğeler bir hiyerarşi içerisindedir ve bunun, açılır menüde belirgin olmasını isterim.JSF Tree bir açılır kapanır içinde
Mümkün mü?
Yani, temelde bir HTML <optgroup>
ister misin? SelectItemGroup
'u kullanın.
MTU fasulye (ben JSF 1.x varsayalım):
private String option; // +getter +setter
private List<SelectItem> options; // +getter
public Bean() {
options = new ArrayList<SelectItem>();
SelectItemGroup group1 = new SelectItemGroup("Group 1");
group1.setSelectItems(new SelectItem[] {
new SelectItem("Group 1 Value 1", "Group 1 Label 1"),
new SelectItem("Group 1 Value 2", "Group 1 Label 2"),
new SelectItem("Group 1 Value 3", "Group 1 Label 3")
});
options.add(group1);
SelectItemGroup group2 = new SelectItemGroup("Group 2");
group2.setSelectItems(new SelectItem[] {
new SelectItem("Group 2 Value 1", "Group 2 Label 1"),
new SelectItem("Group 2 Value 2", "Group 2 Label 2"),
new SelectItem("Group 2 Value 3", "Group 2 Label 3")
});
options.add(group2);
}
MTU görünümü:
<h:selectOneMenu value="#{bean.option}">
<f:selectItems value="#{bean.options}" />
</h:selectOneMenu>
Oluşturulmuş HTML örneği:
<select name="j_idt6:j_idt7" size="1">
<optgroup label="Group 1">
<option value="Group 1 Value 1">Group 1 Label 1</option>
<option value="Group 1 Value 2">Group 1 Label 2</option>
<option value="Group 1 Value 3">Group 1 Label 3</option>
</optgroup>
<optgroup label="Group 2">
<option value="Group 2 Value 1">Group 2 Label 1</option>
<option value="Group 2 Value 2">Group 2 Label 2</option>
<option value="Group 2 Value 3">Group 2 Label 3</option>
</optgroup>
</select>
tarayıcıda benziyor nasıl
+1! –
selectManyMenu için çalışıyor mu ??? Bunu selectManyMenu'da kullanmak istiyorum. – deepmoteria
BalusC kayalar !!! – arthur
Ne istediğini anladığımdan emin değilim. Menüdeki alt kategorilerin biraz girintili olmasını istediğinizi varsayarsak? Böyle bir durumda, sunucu tarafı/işleyiciden, zaten bir "& nbsp" (boşluk) veya bir "-" ile ayrıştırılan öğe dizisini gönderme hakkında.
Başka bir deyişle, kategori hiyerarşisini ayrıştırmak ve anlamak için javascript'i kullanamazsınız. 2 seçeneğiniz var: ya JSF ile özyinelemeyi çalıştırın (sayfayı tasarlamak için ihtiyaç duyan kullanıcı arayüzü için karmaşık ve çirkin sesler) ya da sunucu tarafında sıralama yapın, JSF'yi girintili girintili girişlerle sağlayın. Bu yardımcı olur
Umut,
Yishai
Evet, beni doğru yaptın, seçeneklerim kategoriler halinde gruplandırıldı ve kategorilerin her biri de altında bazı seçenekler var. Optgroup için –
Ancak iç içe geçmiş gruplar doğru şekilde görüntülenemiyor. Grup olarak değiller. Combo kutusunda
ağaç. Bunun kullanımını görselleştiremiyorum, ayrıntılandırır mısınız?] –
Aslında "h: selectOneMenu" ifadesinde olduğu gibi açılan kutucukta olduğu gibi (ki bu da düzenlenebilir bir açılır menüdür) farz ediyorum. – BalusC