2012-04-26 17 views

Odpowiedz

0

css dla przycisku odświeżania jest ui-icon-refresh

więc można napisać niestandardowy kod na tej css jak

jQuery('.ui-icon-refresh').click(function(){ 
    // do your work 
}); 
17

Jeśli trzeba wykonać pewne działania zanim zostanie uruchomiony odświeżania należy użyć beforeRefresh zwrotna:

$("#grid_id").jqGrid('navGrid', '#gridpager', { 
    beforeRefresh: function() { 
     // some code here 
    } 
}); 

Jeśli potrzebujesz inny absolutny o wdrożenie f siatki Odświeżanie gdzie nie zadzwoni $("#grid_id").trigger("reloadGrid"); (co brzmi dziwnie) można to zrobić poprzez zastosowanie refresh: false możliwość usunięcia standardowy przycisk Odśwież i korzystania navButtonAdd dodać przycisk niestandardowy, który wygląda dokładnie tak samo jak oryginalny:

$("#grid_id").jqGrid('navGrid', '#gridpager', {refresh: false}); 
$("#grid_id").jqGrid('navButtonAdd', "#gridpager", { 
    caption: "", title: "Reload Grid", buttonicon: "ui-icon-refresh", 
    onClickButton: function() { 
     alert('"Refresh" button is clicked!'); 
    } 
}); 
+0

Dziękujemy! Ja też tego potrzebowałem. To nie sklonuje ikony do górnego paska nawigacji, nawet jeśli mam ** cloneToTop ** ustawiony na _true_. Mam niestandardową implementację zapisu w siatce, w której na koniec wciskam wszystkie zmiany na serwerze za pomocą zewnętrznego kliknięcia przycisku. Potrzebowałem tej implementacji, aby ostrzec użytkowników o niezapisanych zmianach (i prawdopodobnie zatrzymać _refresh_ w zależności od odpowiedzi), gdy próbują przeładować sieć przy użyciu ikony odświeżania. Nie dostaję żadnej opcji z ** beforeRefresh ** funkcja, aby zatrzymać odświeżanie siatki ... dziwne !! – justcurious

+1

@justcurious: Nie ma za co! Rozumiem Twój problem z zatrzymaniem procesu Odświeżania. Możesz użyć wywołania zwrotnego 'beforeRequest'. Jeśli zwrócisz wartość false z wywołania zwrotnego, możesz zatrzymać odświeżanie. Na przykład, jeśli używasz stronicowania danych, a użytkownik kliknie na sortowanie kolumn, możesz mieć ten sam problem, jak w przypadku odświeżania. Wydaje mi się, że użycie 'beforeRequest' może być rozwiązaniem takich problemów. Jeśli masz dwa pagery i chcesz dodać jakiś przycisk do obu pagery, powinieneś po prostu dwukrotnie wywołać 'navButtonAdd' (patrz [odpowiedź] (http://stackoverflow.com/a/8450272/315935)). – Oleg

+0

słodki ... to była szybka odpowiedź! obie twoje pomysły są dobre. Dzięki! – justcurious

Powiązane problemy