jqgrid multiselect wählt nur Zeilen auf der aktuellen Seite, wenn paging aktiviert ist. Wie zu machen, wählen Sie die Zeilen auf allen Seiten?
Merkte ich in den jqgrid-demo (http://www.trirand.com/blog/jqgrid/jqgrid.html > Advanced > Multiselect), dass nur die Zeilen (sichtbar) auf der aktuellen Seite ausgewählt werden, wenn paging aktiviert ist.
Irgendwelche Tipps, wie es funktioniert über mehrere Seiten hinweg. Oder andere alternative Lösungen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich weiß, diese Frage ist sowas von staubig, aber vor kurzem hatte ich die Notwendigkeit für diese Funktion und fand das, was ich als eine viel saubere Art und Weise, es zu tun.
Anstelle von anfügen eines Ereignisses, um alle Kontrollkästchen, warum man nicht die
onSelectRow
undonSelectAll
Veranstaltungen der jqGrid? Wenn eine Zeile ausgewählt ist, überprüfen, ob unsere Liste der ausgewählten Zeilen enthält diese Zeile (basierend auf id). Fügen Sie es zu der Liste, wenn Sie es nicht war und ausgewählt wurde, entfernen Sie es, wenn es dort war und ist nicht mehr ausgewählt. Wenn alle Zeilen ausgewählt sind, Durchlaufen Sie.Hoffe, dies hilft anderen, auf der Suche nach einer Lösung.
Ich nehme an, Sie möchten zu tun, wählen Sie einige Zeilen auf einer Seite, dann gehen Sie zu einer anderen Seite, vielleicht wählen Sie etwas mehr Zeilen, und alle diese Auswahl beibehalten.
Müssen Sie behandeln die Auswahl der Ereignisse auf die einzelnen Kontrollkästchen. Fügen Sie einen Ereignis-handler zu
each $("#cb_my_grid")
und bleiben ein array der ausgewählten Elemente. Dann, wenn Sie die Daten benötigen (vielleicht, wenn die Seite abgeschickt wird) können Sie die Werte in das array.