Używam siatki Kendo UI z edycją wyskakującą. Domyślnie, gdy użytkownik edytuje pole w edytorze podręcznym i uderza klawiszem Enter, dane są renderowane do siatki (za edytorem podręcznym), ale okienko pozostaje widoczne, a zdarzenie zapisu nie jest uruchamiane, dopóki nie klikniesz przycisku "Aktualizuj przycisk ".Kendo Grid: Trigger Update kliknij na klawisz Enter, aby edytować wyskakujące okienka
Próbuję zmienić tę funkcjonalność, tak aby po naciśnięciu klawisza Enter podczas edytowania pola wywołałoby kliknięcie przycisku "Aktualizuj" - co oznacza, że spowodowałoby wyświetlenie danych w siatce, zwolniłoby zdarzenie zapisu i zamknęło edytor podręczny.
Moja aktualna próba zamknie edytor wyskakujących okienek, ale nie wywoła zdarzenia składowania i cofnie zmiany wprowadzone w polach dla wybranego wiersza. Prawie jak przycisk anulowania został wywołany zamiast tego.
options.edit = function (e) {
$('.k-edit-field .k-input').on('keypress', function (e) {
utils.onEnter(e, function() {
$('.k-grid-update').trigger('click');
});
});
};
Jak mogę wyzwolić „update” kliknięcie przycisku, lub przynajmniej symulować, co robi?
To działało również dla mnie, ale w ciągu 1 sekundy mam błąd js: Nie można użyć operatora "in" do wyszukiwania "getSelection" w niezdefiniowanym. Stacktrace nie powie nic przydatnego, coś wewnętrznego. Po kliknięciu na aktualizację btn myszką - wszystko jest ok .. – EvgeniyK
@ bflemi3 Dzięki za twoje pytanie i odpowiedź, ale jakie są opcje? gdzie napisałeś tę funkcję? Czy możesz wyjaśnić trochę więcej? – MustafaP
@MustafaP Wydaje mi się, że podłącza się do [wydarzenia edycji] (http://docs.telerik.com/kendo-ui/api/javascript/ui/grid#events-edit) za pośrednictwem [setOptions] (http: // docs .telerik.com/kendo-ui/api/javascript/ui/grid # methods-setOptions). – Hastarin