我正在从jQeuryUI弹出窗体更新一行网格数据。在使用Ajax更新的服务器端数据库之后,我更新了数据数组中的数据行。但网格仍保持不变。似乎arry和网格失去了同步。
$.ajax({
type: "PUT",
url: "/api/WebAPIAdminStaff",
data: $('#editForm').serialize(),
success: function (result) {
if (result) {
var scope = angular.element($("#ngBody")).scope();
var row = scope.gridOptions.selectedItems[0];
var index = scope.myData.indexOf(row);
scope.$apply(function () {
scope.myData[index].FirstName = paramFromView.FirstName;
});
}
}
});
这段代码有什么问题吗?真的需要它的工作!非常感谢!
答案 0 :(得分:0)
我最终必须删除该行并再次使用更新的数据添加新行。
$.ajax({
type: "PUT",
url: "/api/WebAPIAdminStaff",
data: $('#editForm').serialize(),
success: function (result) {
if (result) {
var scope = angular.element($("#ngBody")).scope();
var row = scope.gridOptions.selectedItems[0];
var index = scope.myData.indexOf(row);
scope.gridOptions.selectItem(index, false);
scope.$apply(function () {
scope.myData.splice(index, 1);
});
scope.$apply(function () {
scope.myData.splice(index, 0, result);
});
setTimeout(selectARow, 0);
function selectARow() {
scope.$apply(function () {
scope.gridOptions.selectItem(index, true);
});
};
}
}
});