Ich habe ein Problem mit jqGrid 4.6.0 Wenn ich versuche, die Zeilendaten zu erhalten, ändert jede Daten in eine Zeichenfolge muss ich sie analysieren, um die tatsächlichen Int oder Boolean Werte, was seltsam ist, dass, wenn ich die rowobject in einem benutzerdefinierten Formatierer siehe rowData JqGrid getRowdata gibt Zelle Wert in einer Zeile als Zeichenfolge
Hier ist der Beispielcode und jsfiddle Link für die Probe richtig
scheint, ichvar myformatter = function (cellval, options, rowObject)
{
// rowObject is correct here {id: 1, Name: "test1", IsActive: true, Count: 10}
var active = rowObject.IsActive;// here active is true/false which is good
var count = rowObject.Count; // here count is 10,20,30 which is good
if(active)
{
// do what ever
}
return cellval;
}
var mydata = [
{id:1, Name: "test1", IsActive: true, Count: 10},
{id:2, Name: "test2", IsActive: false, Count: 20},
{id:3, Name: "test2", IsActive: false, Count: 30} ];
var grid = $("#list").jqGrid({
datatype: "local",
data: mydata,
height: "auto",
colNames: ['id', 'Name','Is Active','Count'],
colModel :[
{name:'id', index:'id', width:55},
{name:'Name', index:'Name', width:90},
{name:'IsActive', index:'IsActive', width:90, editable: true ,formatter:myformatter},
{name:'Count', index:'Count', width:90, editable: true}
],
pager: '#pager',
rowNum:10,
rowList:[10,20,30],
sortname: 'idcustomers',
sortorder: 'asc',
viewrecords: true,
gridview: true,
caption: 'Customers',
cellEdit: true,
cellsubmit: 'clientArray',
});
var row = $('#list').jqGrid('getRowData', 1);
// row is: {id: "1", Name: "test1", IsActive: "true", Count: "10"}
// What I was expecting {id: 1, Name: "test1", IsActive: true, Count: 10}
danke das hat funktioniert. In Bezug auf deine Anmerkungen ist dies eine schnelle und schmutzige Demo, die ich für jemanden erstellt habe, den du leicht beantworten kannst. Aber mein richtiger ist viel komplizierter und hat alles, was er bezüglich der Formatierung und anderer Dinge benötigt. –
@AmeteBessed: Gern geschehen! – Oleg