jqGrid con inlineNav: ¿hay una manera de forzar el botón Agregar para volver a habilitar?
Estoy usando jqGrid 4.3.2 con elinlineNav
opción. Toda la edición en la cuadrícula se realiza localmente usandoloadonce: true
yclientArray
. Cuando el usuario termina de editar, hace clic en el botón Guardar en el formulario y toda la cuadrícula se publica en el servidor. Esto funciona muy bien, en su mayor parte, pero me he encontrado con una rareza. Si el usuario agrega una nueva fila y luego hace clic en el botón Guardar antes de presionar Intro para confirmar la edición o deseleccionar la fila recién agregada, el botón Agregar en el navegador en línea permanece deshabilitado incluso después de llamarsaveRow
Antes de publicar y recargar. He intentadoresetSelection
yrestoreRow
después de lasaveRow
Llama, pero ninguno de estos trabaja. Mi código de guardado:
$("#submitButton").click(function () {
$("#theGrid").jqGrid('saveRow', $("#selectedRowId").val(), false, 'clientArray');
if (!ValidateGridData())
return false;
var rowData = $("#theGrid").jqGrid('getRowData');
var dataToSend = JSON.stringify(rowData);
$.ajax({
url: '@Url.Action("UpdateGridData")',
type: 'POST',
contentType: 'application/json; charset=utf-8',
data: dataToSend,
dataType: 'json',
async: false,
success: function (data, textStatus, jqXHR) {
$("#theGrid").jqGrid('setGridParam', { datatype: 'json' });
$("#theGrid").trigger('reloadGrid');
},
error: function (jqXHR, textStatus, errorThrown) {
alert('Error saving data: ' + textStatus + " " + errorThrown);
}
});
return true;
});
¿Hay alguna manera de que pueda convencer al navegador en línea de que la nueva fila se guarda y el usuario puede agregar más filas?