|
<ej-grid id="Editing" allow-paging="true" action-complete="actionComplete" data-bound="dataBound" >
<e-datamanager json="(IEnumerable<object>)ViewBag.datasource" update-url="/Home/NormalUpdate" insert-url="/Home/NormalInsert" remove-url="/Home/NormalDelete"adaptor="remoteSaveAdaptor" />
...
<e-columns>
...
</e-columns>
</ej-grid>
<script type="text/javascript">
//mention the scripts that are used
$(function () {
$.getScript('https://ajax.aspnetcdn.com/ajax/signalr/jquery.signalr-1.1.4.min.js', function () {
$.getScript('http://js.syncfusion.com/ejservices/signalr/hubs', function () {
$.signalR.hub.url = 'http://js.syncfusion.com/ejservices/signalr';
window.signalr = $.signalR.scheduleHub;
window.signalr.client.modify = function (action, data) {
if (action == "delete") { //delete action
var gridObj = $("#Editing").ejGrid("instance");
var dm = ej.DataManager(gridObj.model.dataSource.dataSource.json);
var data = dm.executeLocal(ej.Query().where("OrderID", ej.FilterOperators.equal, data.OrderID))
}
if (action == "add") //add action
$("#Editing").ejGrid("addRecord", data);
else if (action == "beginedit") { //save action
$("#Editing").ejGrid("updateRecord", "OrderID", data);
}
else
$("#Editing").ejGrid("deleteRecord", "OrderID", data[0]);
};
$.signalR.hub.start({ jsonp: true }).done(function () {
window.actionComplete = function (args) {
if (args.requestType == "save" || args.requestType =="delete")
window.signalr.server.modify(args.requestType == "delete" ? args.requestType : window.previousAction, args.data);
if (args.requestType != "delete")
window.previousAction = args.requestType;
};
});
});
});
});
</script>
|