Wie neu laden JQuery grid-halten Sie die scroll-position und Zusammenbruch Elemente öffnen
Derzeit arbeite ich mit JQuery plugin für struts2. Ich würde gerne wissen, wie neu zu laden JQuery raster, ohne dabei die aktuelle scroll-position und reduzieren von Zeilen.
Um das nachladen der Daten in der Tabelle ich bin mit dem folgenden javascript-code:
var timerID = setInterval("RefreshGridData()", 5000);
function RefreshGridData() {
$("#griditems").trigger("reloadGrid");
}
Die jsp des Rasters ist die folgende:
<s:url id="itemsurl" action="getItemsJson.action" />
<s:url id="subitemsurl" action="getSubItemsJson.action" />
<sjg:grid id="griditems" caption="Items and Subitems" dataType="json"
href="%{itemsurl}" pager="false" viewrecords="true" height="400"
gridModel="gridModel" rowNum="-1" sortable="true">
<sjg:grid id="gridsubitems" subGridUrl="%{subitemsurl}"
gridModel="gridModel" rowNum="-1">
<sjg:gridColumn name="subcol1" index="subcol1" title="SubColumn 1"
width="120" />
<sjg:gridColumn name="subcol2" index="subcol2" title="SubColumn 2"
align="left" width="120" />
</sjg:grid>
<sjg:gridColumn name="col1" index="col1" title="Column 1" sortable="true"
width="80"/>
<sjg:gridColumn name="col2" index="col2"
title="Column 2" sortable="true" />
<sjg:gridColumn name="col3" index="col3" title="Column 3"
sortable="true" />
</sjg:grid>
Irgendwelche Kommentare auf, wie diese umzusetzen sind willkommen.
Vielen Dank im Voraus.
- Sollten Sie weitere Informationen über das jqGrid, die Sie versuchen zu laden.
- Danke für die Anregung Oleg, ich habe gerade den code der Tabelle.
Du musst angemeldet sein, um einen Kommentar abzugeben.
nachdem die Daten geladen, die im Ereignis loadComplete
EDIT :
nicht sicher, ob dies funktionieren wird, ich habe nicht testen Sie es tut, es sollte so etwas wie, dass
BEARBEITEN
setGridParam - nicht suire, ob es funktionieren wird auf Veranstaltungen, aber Sie könnten versuchen, die
konnte ich nicht finden, so setzen Sie subGridRowExpanded topick mit tag-Bibliothek im Streben, sondern versuchen Sie, durch verändern der config, die nach raster konstruiert, indem taglibrary
BEARBEITEN
ok unterschiedliche Herangehensweise :
und beim laden von grid ist komplett :
Ich endlich mein problem gelöst. Vielen Dank für die nützlichen Informationen, die von firegnom in seine Antwort und Kommentare bekam ich einen grossen Schub nach vorn zu schaffen, eine Implementierung von jQuery grid (mit subgrid), mit Struts2-tags, die behält seine vorherigen scroll-position und erweitert/reduziert Zustand nach neu laden.
JavaScript
Benutzte ich die isDigit - Funktion, da das erste element mit der Klasse sgexpanded ist immer 0, und dies ist keine gültige Zeilennummer in einem raster da die Zeilen zählen von 1. Eine weitere Beobachtung ist, dass ich einen timer einstellen, bevor Sie die setScrollPos-Funktion, da mein Netz nicht über eine scroll-bar, bevor Sie eine bestimmte Anzahl von Zeilen erweitert werden, und da die expandierende Wirkung ist nicht sofort, es ist notwendig, um die scroll-position nach einer gewissen Zeit.
Grid code-tags
Hoffe, es hilft jemandem.
Cheers.
Laden der Seite in-place (hält die aktuelle scroll-position) verwenden Sie einfach:
Habe ich das problem lösen, indem diese
dieser code halten der letzten position der Startaufstellung