Ich kann nicht eine Zeile in die Spitze eines jqGrid Tabelle mit der Zeile hinzu:jqGrid „addRowData“ auf „erste“ funktioniert nicht
jQuery("#myTable").jqGrid('addRowData', 0, myData, "first");
Es kommt noch hinzu, auf der Unterseite der Liste wie gewohnt
Hat jemand das versucht und funktioniert für sie?
In meinem Tisch, zuvor hinzugefügten Zeilen Index, der von 0 bis N geht
I jqGrid v3.8.1 und jQuery 1.4.3
<html>
<head>
<link rel="stylesheet" type="text/css" media="screen" href="css/jquery-ui-1.8.5.custom.css" />
<link rel="stylesheet" type="text/css" media="screen" href="css/ui.jqgrid.css" />
<script src="js/jquery-1.4.3.js" type="text/javascript"></script>
<script src="js/i18n/grid.locale-en.js" type="text/javascript"></script>
<script src="js/jquery.jqGrid.min.js" type="text/javascript"></script>
<script src="js/jquery-ui-1.8.5.custom.min.js" type="text/javascript"></script>
</head>
<script type="text/javascript">
$(document).ready (function(){
jQuery("#myTable").jqGrid({
datatype: "local",
colNames:['Data ID','Device'
],
colModel:[
{name:'DATA_ID',index:'DATA_ID', sorttype:"int", width:22, align:"center", sortable:false},
{name:'DATA_DN',index:'DATA_DN', width:60, align:"center", sortable:false},
],
width: "1216",
});
var myData = [{"DATA_ID":"9", "DATA_DN": "sony"}, {"DATA_ID":"10", "DATA_DN": "panasonic"}];
var newData = [{"DATA_ID":"0", "DATA_DN": "national"}, {"DATA_ID":"1", "DATA_DN": "samsung"}];
for(var i=0;i<myData.length;i++)
{
jQuery("#myTable").jqGrid('addRowData', i, myData[i]);
}
jQuery("#myTable").addRowData(0, newData, "first");
//jQuery("#myTable").trigger("reloadGrid");
});
</script>
</head>
<body>
<table id="myTable"></table>
<div id="myTable_pager"></div>
</body>
</html>
Ich habe den Code Oleg hinzugefügt - entweder myData als [] oder {} zu übergeben hat keinen Unterschied gemacht - obwohl ich das Problem gefunden habe - es ist der Aufruf an jQuery ("# meineTabelle").trigger ("reloadGrid"); dass neu ordnet das Array - so ist das Problem mit dem = Ich brauche das Array, da meinen Pager (nicht in diesem Code) neu geladen werden muss mit der tatsächlichen Anzahl der Datensätze aktualisiert werden - so die Frage ist nun, wie kann ich hinzufügen, neue Elemente und das Gitter neu geladen, aber die Zeilen sortiert werden nicht - ich den „sortierbar: false“ verwendet DID-Flag im colModel ... – sami
Or (im Gespräch mit mir) ich ein recieved_time Feld halten konnte und es auf der Grundlage, dass sortieren so dass meine neuesten Aufzeichnungen oben zu halten, wie – sami
@sami Wünsche offen: Die Verwendung von recieved_time Feld zum Sortieren ein guter Weg ist, aber es ist notwendig, nachdem 'jQuery („# myTable“) Trigger („reloadGrid“);. '. Sie können die Zeile an beliebiger Stelle mit dem von mir geposteten Code hinzufügen. – Oleg