Stellen Sie jqGrid füllen Ihre container
Ich bin mit dem jQuery-layout-plugin und den jqGrid-plugin in einem meiner Projekte, und Sie funktionieren sehr gut, außer ein kleines problem...
Ich will das jqGrid zu füllen vollständig den Bereich (jQuery layout-Fenster), die es enthält. Die Größe des Bereich sollte die Größe der jqGrid, schließen Sie den Bereich ausblenden soll das jqGrid, etc, etc.
Beide jqGrid und jQuery Layout bieten Rückrufe, aber wenn ich verwenden Sie die Seitenlayout-Pausen schrecklich.
Hat jemand eine Erfahrung mischen jqGrid jQuery Layout?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Empfehle ich Ihnen die Lektüre durch Größe ändern-jqgrid-als-browser-wird-in der Größe verändert, die werden mehrere Techniken behandelt, die Größe Ihres Gitters.
Dies ist meine aktuelle Lösung:
Erstellen Sie zuerst eine resize-Funktion, die aufgerufen wird, das onresize-Ereignis:
Dann in Ihrem layout haben wir das resize-Ereignis diese Methode aufrufen:
Mit dieser können Sie stellen Sie jqGrid ist in jedem Bereich Ihres Layouts, und Sie werden geändert werden, um fit die Scheibe ist, wenn das mittlere Fenster in der Größe geändert wird.
Ich bin mit jqgrid 4.0 (via jquery struts 2-Plug-in) und jQuery layout plugin. Die Vorherige Antwort nicht für mich arbeiten. Nur die Funktion
resizeGrid
war ein problem. Ersetzen Sie einfach dieresizeGrid
- Funktion oben mit dabei. Dies wird nur die Größe eines raster - derjenige, dessen id istgridtable
.#gridtable
ist die id der Tabelle element, das Sie erstellen für jqgridAuch, wenn Sie das struts2 jquery plugin, das raster wird automatisch über
< script >
Blöcke innerhalb der< body >
(nicht im Skript-Blöcke innerhalb< head >
). Also, wenn Sie genanntlayout()
- und set -triggerEventsOnLoad: true
im< head >
erhalten Sie einen javascript-Fehler. Um dies zu vermeiden, können Sie dieses Skript block irgendwo nach Ihrem grid(s) deklariert ist.Wenn du mehr als ein raster, können Sie mit einer Klasse, die Sie definiert haben, auf das table-element (siehe html-snippet oben), und führen Sie dann das
resizeGrid
Methode auf jeden von Ihnen.