Ich mache In-Line-Bearbeitungen in einem Raster, aber es scheinen keine Ereignisse ausgelöst zu werden, die an diese Bearbeitung gebunden wären.jqGrid: Warum werden die Ereignisse, die ich für ein Gitter-Edit definiert habe, nicht ausgelöst?
Hier habe ich afterSubmit: und ich möchte es ausgelöst, nachdem der Benutzer das Feld Menge im Raster bearbeitet hat, aber es wird nie ausgelöst.
$('#tblLines').jqGrid({
url: createUrl('/CRA/GetLines/'),
editurl: '/CRA/EditModifyLine',
emptyrecords: '',
datatype: 'json',
mtype: 'GET',
colNames: ['Group', 'Description', 'Quantity'],
colModel: [
{ name: 'Group', index: 'Group', width: 100, align: 'left' },
{ name: 'Description', index: 'Description', width: 400, align: 'left' },
{ name: 'Quantity', index: 'Quantity', width: 150, align: 'left', editable: true },
pager: jQuery('#pgrLines'),
rowNum: 10,
rowList: [5, 10, 20, 50],
sortname: 'Group',
sortorder: "desc",
viewrecords: true,
caption: 'Core Group Lines',
onSelectRow: function(id) {
$('#tblCoreGroupLines').editRow(id, true);
lastsel = id;
},
afterSubmit: function(response, postdata) {
alert('got here');
},
postData: { craId: $('#CraId').val() }
});
Ich habe versucht, die Ereignisse niedriger als Teil eines NavControl zu definieren, aber das funktioniert auch nicht. Die In-Line-Bearbeitung funktioniert gut - der POST ist erfolgreich und das Ergebnis kommt zurück, es trifft niemals die Ereignisse, die damit verbunden sein sollten. Ich habe alle Ereignisse ausprobiert, die mit der Änderung des Felds Menge zusammenhängen würden, aber keiner von ihnen funktioniert.
Habe ich das Ereignis an der richtigen Stelle definiert? Fehle ich eine Eigenschaft auf dem Gitter oder etwas?
Ich denke, du bist auf dem richtigen Weg. Diese editRow-Anweisung hatte jedoch zwei Parameter .editRow (id, true). Was ist mit dem booleschen 'wahren' Parameter passiert? Die Zelle scheint sich ohne sie nicht mehr zu unterwerfen. –
Sorry, das sollte editGridRow sein. – seth
Ich hatte gehofft, eine Popup-Box zu vermeiden. Idealerweise wollte man dieses Verhalten für Inline-Editierungen im Grid bekommen. –