Mam panel siatki za pomocą wtyczki edycji komórki.ExtJS 4 - Jak warunkowo edytować komórkę w siatce?
W tym panelu siatki, chcę edycji warunkową na komórkę w następujący sposób:
Kiedy użytkownik kliknie w komórce do edycji, nie należy potwierdzić okno pokazane - „Czy chcesz edytować komórkę? " - jeśli wybierze opcję "Tak", wówczas komórka jest skupiona i rozpoczyna się edycja, w przeciwnym razie komórka pozostaje wyłączona.
Próbowałem użyć zdarzenia 'beforeedit', ale użytkownik może modyfikować wartości za pomocą klawiszy strzałek (ponieważ edytor jest polem numerycznym), nawet gdy wyświetlane jest okno potwierdzenia, to znaczy, że mysz kliknięcie jest wyłączone, ale klawisze strzałek nadal mogą zmieniać wartość pola.
Ponadto, gdy użytkownik wybierze opcję "Tak", komórka utraci ostrość i nie będę w stanie rozpocząć edycji zaraz po kliknięciu przycisku "Tak". Próbowałem użyć metody "skupienia", ale bez powodzenia.
Czy można w tym pomóc?
Z góry dziękuję.
Więcej informacji:
Próbowałem za pomocą - startEditByPosition() - funkcja wtyczki edycji komórek, gdy użytkownik wybierze 'Tak'. Ale z tego powodu pole potwierdzenia nadal pojawia się, ponieważ po wybraniu "Tak" rozpoczyna się edycja, która ponownie wywołuje zdarzenie beforeedit. Jakaś pomoc?
doskonałe rozwiązanie Molecular Man. Dziękuję za udostępnienie. – netemp
Demo nie działa. – yurin
@yurin, wiele rzeczy zmieniło się od 2011 roku. Linki do plików zasobów extjs również się zmieniły :) Naprawiono demo. Dzięki –