<ejs-grid id="Grid" dataSource="ViewBag.data" allowPaging="true" actionBegin="actionBegin" toolbar="@(new List<string>() { "Add", "Edit", "Delete", "Update", "Cancel" })">
<e-grid-editSettings allowAdding="true" allowEditing="true" allowDeleting="true" mode="Dialog"></e-grid-editSettings>
<e-grid-columns>
<e-grid-column field="OrderID" headerText="Order ID" isPrimaryKey="true" width="100"></e-grid-column>
<e-grid-column field="CustomerID" headerText="Customer ID" width="120"></e-grid-column>
<e-grid-column field="Freight" headerText="Freight" visible="false" format="C2" editType="numbericedit" width="120"></e-grid-column>
<e-grid-column field="OrderDate" headerText="Order Date" visible="false" editType="datepickeredit" format="yMd" width="130"></e-grid-column>
<e-grid-column field="ShipCity" headerText="Ship City" editType="dropdownedit" width="120"></e-grid-column>
</e-grid-columns>
</ejs-grid>
<script type="text/javascript">
var fields = [];
function actionBegin(args) {
if (args.requestType == "beginEdit" || args.requestType == "add") {
for (var i = 0; i < this.columns.length; i++) {
if (!this.columns[i].visible) {
fields.push(this.columns[i].field);
this.columns[i].visible = true;
}
}
}
if (args.requestType == "save" || args.requestType == "cancel") {
for (var i = 0; i < this.columns.length; i++) {
for (var j = 0; j < fields.length; j++) {
if (this.columns[i].field == fields[j]) {
this.columns[i].visible = false;
}
}
}
}
}
</script> |
@Html.EJS().Grid("RemoteSaveAdaptor").DataSource(dataManager => { dataManager.Json(@Model.orderData.ToArray()).InsertUrl("/Home/Insert").RemoveUrl("/Home/Delete").UpdateUrl("/Home/Update").Adaptor("RemoteSaveAdaptor"); }).Columns(col =>
{
col.Field("OrderID").HeaderText("Order ID").IsPrimaryKey(true).Width("30%").Add();
col.Field("EmployeeID").HeaderText("Employee ID").Width("150").Add();
col.Field("CustomerID").HeaderText("CustomerID").Width("70").Visible(false).Add();
}).AllowPaging().ActionBegin("actionBegin").ActionComplete("actionComplete").AllowSorting(true).Toolbar(new List<string>() { "Add", "Edit", "Delete", "Update", "Cancel" }).EditSettings(edit => { edit.AllowAdding(true).AllowEditing(true).AllowDeleting(true).Mode(Syncfusion.EJ2.Grids.EditMode.Dialog); }).Render()
<script>
function actionBegin(args) {
if ((args.requestType === 'beginEdit' || args.requestType === 'add')) {
for (var i = 0; i < this.columns.length; i++) {
if (this.columns[i].field == "CustomerID") {
this.columns[i].visible = true;
}
}
}
}
function actionComplete(args) {
if (args.requestType === 'save') {
for (var i = 0; i < this.columns.length; i++) {
if (this.columns[i].field == "CustomerID") {
this.columns[i].visible = false;
}
}
}
}
</script>
@Html.EJS().ScriptManager() |
EJ1 with a SQL Data Source. (without a template)Thanks