2010-06-30 13 views
11

Chcę dodać procedurę obsługi zdarzeń do jqGrid (dla zdarzenia onSelectRow), ale po utworzeniu siatki na stronie, tzn. Nie mogę jej zakodować na stałe w początkowej definicji jqGrid.Dodaj procedurę obsługi zdarzeń do jqGrid po utworzeniu instancji

Próbowałem, używając setGridParam ustawić obsługi zdarzeń dla onSelectRow ale nie działał :(

$('#list').jqGrid('setGridParam', { onSelectRow: function(id){ alert(id); } }); 

Docs jqGrid są dość trudne do uzyskania, co chcesz z nimi i nie miałaś znaleziono niczego dotyczących tego problemem.

Odpowiedz

19

właśnie testowane w użyciu

$('#list').jqGrid('setGridParam', { onSelectRow: function(id){ alert(id); } }); 

w moim kodu i to działa. Jeśli jqGrid ma już onSelectRow Zastępuje stary uchwyt zdarzenia. Jeśli nie ma obsługi zdarzeń onSelectRow, dodaje nową procedurę obsługi. Więc wszystko musi działać.

Jeśli będziesz miał problem, powinieneś opublikować przykład kodu, który go powieli.

+0

Witam Oleg - może moja wersja jQuery? Działa teraz z dokładnie tym samym kodem, grałem z różnymi wersjami jQuery w tym czasie. Dzięki za potwierdzenie w każdym razie: P – Jimbo

+0

@Oleg, czy istnieje sposób na rejestrację wielu funkcji do wywołania w zdarzeniu grid? Na przykład chcę podstawowych rzeczy, które zawsze działają na loadComplete, ale w niektórych sieciach mam inne rzeczy, które również tam należą. – IronicMuffin

+0

@IronicMuffin: To dobre pytanie! Istnieje tylko jedno zdarzenie 'loadComplete'. Jeśli opisujesz dokładniej swoje środowisko i problem, możesz zaproponować rozwiązanie. – Oleg

Powiązane problemy