jqGrid mit inlineNav: Gibt es eine Möglichkeit, die Schaltfläche Hinzufügen zum erneuten Aktivieren zu zwingen?

Ich benutze jqGrid 4.3.2 mit deminlineNav Möglichkeit. Die gesamte Bearbeitung im Raster erfolgt lokal mitloadonce: true undclientArray. Wenn der Benutzer die Bearbeitung abgeschlossen hat, klickt er im Formular auf eine Schaltfläche zum Speichern, und das gesamte Raster wird auf dem Server bereitgestellt. Das funktioniert größtenteils großartig, aber ich bin auf eine Kuriosität gestoßen. Wenn der Benutzer eine neue Zeile hinzufügt und dann vor dem Drücken der Eingabetaste auf die Schaltfläche Speichern klickt, um das Bearbeiten oder Abwählen der neu hinzugefügten Zeile zu bestätigen, bleibt die Schaltfläche Hinzufügen im Inline-Navigator auch nach dem Aufruf deaktiviertsaveRow vor dem posten und nachladen. ich habe es versuchtresetSelection undrestoreRow nach demsaveRow Anruf, aber keine dieser Arbeiten. Mein Speichercode:

$("#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;
});

Kann ich den Inline-Navigator davon überzeugen, dass die neue Zeile gespeichert wird und der Benutzer weitere Zeilen hinzufügen kann?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage