wytwarzania przybornik Chcę wiedzieć, jak zrobić radiogroup ze zwykłych przycisków, a nie radiobuttons, w Ext.js (najnowsza wersja)ExtJS radiogroup z przyciskami
tak z jQueryUI: http://jqueryui.com/demos/button/#radio
Thanks z góry, Chielus
wytwarzania przybornik Chcę wiedzieć, jak zrobić radiogroup ze zwykłych przycisków, a nie radiobuttons, w Ext.js (najnowsza wersja)ExtJS radiogroup z przyciskami
tak z jQueryUI: http://jqueryui.com/demos/button/#radio
Thanks z góry, Chielus
Myślę, że powinieneś spojrzeć na użycie zestawu standardowych przycisków ExtJS. Przycisk można przypisać do grupy , aby działały jako elementy widoczne w łączu.
Zobacz ten przykład:
{
xtype: 'button',
text: 'Choice 1',
toggleGroup: 'mygroup'
}, {
xtype: 'button',
text: 'Choice 2',
toggleGroup: 'mygroup'
}, {
xtype: 'button',
text: 'Choice 3',
toggleGroup: 'mygroup'
}
Przyciski mają również właściwość o nazwie enableToggle
, która pozwala im włączyć i jest automatycznie ustawiony na true, gdy ustawisz toggleGroup
i toggleGroup
mówi ExtJS jaki sposób są one powiązane.
Uwaga, wyglądają jak zwykłe przyciski ExtJS, ale zachowują się tak, jak chcesz.
Wystarczy odpowiedzieć @ komentarzu Mastak (w odpowiedzi powyżej), aby nie pozwolić na działanie de-wybraniu przycisku, dodać tę słuchacza do każdego przycisku:
listeners: {
click: function(me, event) {
// make sure a button cannot be de-selected
me.toggle(true);
}
}
ten sposób każde kliknięcie przycisk ponownie go wybierze.
-dbg
Jest mniej skomplikowany (lepsza?) Sposób, aby uniemożliwić odznaczenie przycisku. Ustaw opcję config allowDepress false:
{
xtype: 'radiogroup',
layout: 'hbox',
defaultType: 'button',
defaults: {
enableToggle: true,
toggleGroup: 'mygroup',
allowDepress: false,
items: [
{ text: 'Choice 1'},
{ text: 'Choice 2'},
{ text: 'Choice 3'}
]
}
}
Dzięki, to działa. Jak mogę teraz uzyskać wybraną wartość? Poza tym wykonując go za pomocą eventHandler dla przycisków i zmiennej globalnej – Chielus
Jeśli wiesz, w którym pojemniku się znajdują, możesz przejść przez przyciski i zobaczyć, który z nich jest wciśnięty. Jeśli znasz jeden z przycisków, możesz znaleźć rodzica i polubić go wcześniej. Nie wiem, czy "ButtonGroup" da ci jakieś korzyści. – Chau
@Chau Działa jak urok .. z wyjątkiem niewielkiego problemu. Nadal nie ma możliwości wyboru niczego, co oznacza odznaczenie wciśniętego przycisku :(.. Czy istnieje sposób na uniknięcie takich rzeczy, jeśli jakiś przycisk jest naciśnięty domyślnie? – mastak