JSFiddle - React, Tailwind, and code Playground
by valchev
HTML
<script src="http://cdn.kendostatic.com/2012.1.515/js/kendo.all.min.js"></script>
<link rel="stylesheet" href="http://cdn.kendostatic.com/2012.1.322/styles/kendo.common.min.css">
<link rel="stylesheet" href="http://cdn.kendostatic.com/2012.1.322/styles/kendo.default.min.css">
<div id="grid"></div>
JavaScript
var dataSource = new kendo.data.DataSource({
schema: {
model: {
id: "foo",
fields: {
foo: {type: "number"},
bar: {type: "string"},
isEditable: {type: "boolean"}
}
}
},
transport: {
read: {
//using jsfiddle echo service to simulate JSON endpoint
url: "/echo/json/",
dataType: "json",
type: "POST",
data: {
// /echo/json/ echoes the JSON which you pass as an argument
json: JSON.stringify([
{ foo: 1, bar: "a", isEditable: false },
{ foo: 2, bar: "b", isEditable: false },
{ foo: 3, bar: "c", isEditable: true }
])
}
},
update: {
url: "test"
}
}
});
$("#grid").kendoGrid({
dataSource: dataSource,
editable: "inline",
columns: [
"foo",
"bar",
{ command: "edit" }
],
dataBound: function(e) {
var view = this.dataSource.view();
for (var i = 0; i < view.length; i++) {
if(!view[i].isEditable) {
var row = this.tbody.find("tr[data-uid=\"" + view[i].uid + "\"]");
row.find("td:last").html("not editable!");
}
}
}
});