2013-10-03 12 views
6

Często potrzebuję edytować pojedynczy rekord w bazie danych bez konieczności wyświetlania siatki. Mogę ukryć siatkę za pomocą CSS lub jQuery. Czego nie mogłem zrozumieć to bezpośrednie przejście do formularza edycji z innej strony podczas ukrywania siatki.Przekieruj do formularza edycji jqGrid bezpośrednio bez wyświetlania siatki

Wiem, że to rodzaj pokonania celu posiadania siatki, ale jest to jeden z tych przypadków, w których tylko jeden rekord powinien być wyświetlany i modyfikowany przez użytkowników, podobnie jak w trybie pojedynczego rekordu Access. Czy to możliwe?

enter image description here

+0

można napisać żadnych uwag na temat odpowiedzi na swoje pytanie? – Oleg

Odpowiedz

3

Ogólnie można po prostu ukryć tak nazwane "gbox" utworzone przez sieć, a następnie wywołać metodę editGridRow z opcjami, które chcesz mieć. W rezultacie otrzymasz formularz zbliżony do tego, co chcesz. Jestem pewien, że musisz zrobić kilka innych drobnych problemów, ale pierwszy wygląd może być taki, jaki chcesz. Ponadto możesz przewijać wiersze podczas edycji.

The demo pokazać, co mam na myśli. To pokazuje poniższy formularz

enter image description here

Demo wykorzystuje następujący kod

$("#list").jqGrid({ 
    ... 
    loadComplete: function (data) { 
     $(this).jqGrid("editGridRow", data.rows[0].id, { 
      modal: true, 
      overlay: 0, // create no overlay 
      onClose: function() { 
       return false; // don't allow to close the form 
      } 
     }); 
    } 
}).closest(".ui-jqgrid").hide(); 
+0

Gotowy! Brakowało mi użycia zdarzenia loadComplete. Nie wiedziałem, że to takie łatwe. – devXen

+0

Witam Próbuję użyć własnego niestandardowego formularza edycji. Czy to możliwe, jeśli tak, pomóżcie mi, jak to zrobić. w przeciwnym razie poprowadzi mnie naprzemiennie dla tego –

+0

@KumarShanmugam: Tak, 'navButtonAdd' pozwala na dodanie przycisku niestandardowego, który może utworzyć niestandardowy formularz edycji. Alternatywnie możesz użyć parametrów "editfunc", 'addfunc' i' delfunc' [navGrid] (http://www.trirand.com/jqgridwiki/doku.php?id=wiki:navigator#parameters). – Oleg

1

Jest to jeden z powodów, lubię używać własnych formularzy niestandardowych edycji, zamiast jednego wbudowanego w jqGrid. Następnie możesz po prostu otworzyć go tak, jak chcesz, od obsługi jqGrid (z odpowiednimi parametrami oczywiście), bez siatki.

+0

Witam Próbuję również tego samego, proszę podziel się ze mną jak wywołać własny niestandardowy formularz edycji. –

+0

@KumarShanmugam - Dodaj przycisk edycji do siatki, a od obsługi wystarczy otworzyć okno dialogowe interfejsu użytkownika jQuery (lub preferowany dialog dialogowy). –

Powiązane problemy