or
@(Html.Kendo().Grid<
KendoMvcQuickTest.Models.Test
>()
.Name("Grid")
.Columns(columns => {
columns.Bound(p => p.Id).Width(100);
columns.Bound(p => p.Name);
columns.Command(command => { command.Edit(); command.Destroy(); }).Width(200);
})
.ToolBar(toolbar => toolbar.Create())
.Editable(editable => editable.Mode(GridEditMode.InLine))
.Pageable()
.Sortable()
.Scrollable()
.DataSource(dataSource => dataSource
.Ajax()
.Events(events => events.Error("error_handler"))
.Model(model => model.Id(p => p.Id))
.Create(update => update.Action("Create", "Grid"))
.Read(read => read.Action("Read", "Grid"))
.Update(update => update.Action("Update", "Grid"))
.Destroy(update => update.Action("Destroy", "Grid"))
)
)
public
class
GridController : Controller
{
public
ActionResult Read([DataSourceRequest] DataSourceRequest request)
{
return
Json(Data.ToDataSourceResult(request, ModelState));
}
public
ActionResult Create([DataSourceRequest] DataSourceRequest request, Models.Test[] models)
{
foreach
(var testItem
in
models)
{
testItem.Id = Data.Max(e => e.Id) + 1;
this
.Data.Add(testItem);
}
return
Json(Data.ToDataSourceResult(request, ModelState));
}
public
ActionResult Update([DataSourceRequest] DataSourceRequest request, Models.Test[] models)
{
foreach
(var testItem
in
models)
{
var item = Data.FirstOrDefault(e => e.Id == testItem.Id);
item.Name = testItem.Name;
}
return
Json(Data.ToDataSourceResult(request, ModelState));
}
public
ActionResult Destroy([DataSourceRequest] DataSourceRequest request, Models.Test[] models)
{
foreach
(var testItem
in
models)
{
var item = Data.FirstOrDefault(e => e.Id == testItem.Id);
Data.Remove(item);
}
return
Json(Data.ToDataSourceResult(request, ModelState));
}
private
Models.TestColleciton Data
{
get
{
return
this
.Session[
"TestCollection"
] ==
null
?
(
this
.Session[
"TestCollection"
] = Build())
as
Models.TestColleciton :
(
this
.Session[
"TestCollection"
])
as
Models.TestColleciton;
}
}
private
Models.TestColleciton Build()
{
var collection =
new
Models.TestColleciton();
collection.Add(
new
Models.Test() {
Id = 1,
Name =
"item1"
});
collection.Add(
new
Models.Test()
{
Id = 2,
Name =
"item2"
});
collection.Add(
new
Models.Test()
{
Id = 3,
Name =
"item3"
});
return
collection;
}
}
<script>
jQuery(
function
(){jQuery(
"#Grid"
).kendoGrid({columns:[{title:
"Id"
,width:
"100px"
,field:
"Id"
,encoded:
true
,editor:
"\u003cinput class=\"text-box single-line\" data-val=\"true\" data-val-number=\"The field Id must be a number.\" data-val-required=\"The Id field is required.\" id=\"Id\" name=\"Id\" type=\"number\" value=\"0\" /\u003e\u003cspan class=\"field-validation-valid\" data-valmsg-for=\"Id\" data-valmsg-replace=\"true\"\u003e\u003c/span\u003e"
},{title:
"Name"
,field:
"Name"
,encoded:
true
,editor:
"\u003cinput class=\"text-box single-line\" id=\"Name\" name=\"Name\" type=\"text\" value=\"\" /\u003e\u003cspan class=\"field-validation-valid\" data-valmsg-for=\"Name\" data-valmsg-replace=\"true\"\u003e\u003c/span\u003e"
},{width:
"200px"
,command:[{name:
"edit"
,buttonType:
"ImageAndText"
,text:
"Edit"
},{name:
"destroy"
,buttonType:
"ImageAndText"
,text:
"Delete"
}]}],pageable:{},sortable:
true
,editable:{confirmation:
"Are you sure you want to delete this item?"
,mode:
"inline"
},toolbar:{command:[{name:
null
,buttonType:
"ImageAndText"
,text:
"Add new item"
}]},dataSource:{transport:{read:{url:
"/Grid/Read"
},update:{url:
"/Grid/Update"
},create:{url:
"/Grid/Create"
},destroy:{url:
"/Grid/Destroy"
}},pageSize:10,page:1,total:0,serverPaging:
true
,serverSorting:
true
,serverFiltering:
true
,serverGrouping:
true
,serverAggregates:
true
,type:
"aspnetmvc-ajax"
,filter:[],error:error_handler,schema:{data:
"Data"
,total:
"Total"
,errors:
"Errors"
,model:{id:
"Id"
,fields:{Id:{type:
"number"
},Name:{type:
"string"
}}}}
}});});
</script>
{
"Data"
:[{
"Id"
:1,
"Name"
:
"item1"
},{
"Id"
:2,
"Name"
:
"item2"
},{
"Id"
:3,
"Name"
:
"item3"
}],
"Total"
:3,
"AggregateResults"
:
null
,
"Errors"
:
null
}
{
"Data"
:[{
"Id"
:1,
"Name"
:
"bob"
},{
"Id"
:2,
"Name"
:
"item2"
},{
"Id"
:3,
"Name"
:
"item3"
}],
"Total"
:3,
"AggregateResults"
:
null
,
"Errors"
:
null
}
{
"Data"
:[{
"Id"
:1,
"Name"
:
"bob"
},{
"Id"
:2,
"Name"
:
"item2"
},{
"Id"
:3,
"Name"
:
"tim"
}],
"Total"
:3,
"AggregateResults"
:
null
,
"Errors"
:
null
}
$('tr[data-uid="' + row.uid + '"] td:nth-child(1)').css("background-color", "Pink");
I can see in Firebug (attached file has screenshot) that the cells are included in (e), the one I'm
trying to get is named PO_ID.
$('tr[data-uid="' + row.uid + '"] td:nth-child(1)').css("background-color", "Pink");
I can see in Firebug (attached file has screenshot) that the cells are included in (e), the one I'm
trying to get is named PO_ID.