Hi mahesh213,
Refer below sample.
Controller
public class HomeController : Controller
{
// GET: Home
public ActionResult Index()
{
return View();
}
public JsonResult GetCustomers()
{
List<Customer> customers = new List<Customer>();
customers.Add(new Customer { Id = 1, Name = "John Hammond" });
customers.Add(new Customer { Id = 2, Name = "Mudassar Khan" });
customers.Add(new Customer { Id = 3, Name = "Suzanne Mathews" });
customers.Add(new Customer { Id = 4, Name = "Robert Schidner" });
return Json(customers, JsonRequestBehavior.AllowGet);
}
public class Customer
{
public int Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
}
}
View
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
<link rel="stylesheet" href="https://kendo.cdn.telerik.com/2020.1.114/styles/kendo.default-v2.min.css" />
<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script type="text/javascript" src="https://kendo.cdn.telerik.com/2020.1.114/js/angular.min.js"></script>
<script type="text/javascript" src="https://kendo.cdn.telerik.com/2020.1.114/js/kendo.all.min.js"></script>
<script type="text/javascript">
var app = angular.module("MyApp", ["kendo.directives"]);
app.controller("MyController", function ($scope, $http, $window, $interval) {
ApplyKendoGrid();
function ApplyKendoGrid() {
$scope.mainGridOptions = {
dataSource: {
transport: {
read: { url: "/Home/GetCustomers", cache: false }
},
pageSize: 10,
serverPaging: false,
serverSorting: false
},
columns: [
{ field: "Id", title: "Id", width: '30px' },
{ field: "Name", title: "Name", width: '60px' },
{
field: "Age",
template: '<input style="width:100px" type="text" class="age" id="Age" />',
width: 80
},
],
dataBound: function (e) {
var grid = e.sender;
var items = e.sender.items();
items.each(function (e) {
var dataItem = grid.dataItem(this);
var age = $(this).find('.age');
if (dataItem.Name == "Mudassar Khan") {
$(age).removeAttr('disabled');
} else {
$(age).attr('disabled', 'disabled');
}
});
}
};
}
})
</script>
</head>
<body ng-app="MyApp" ng-controller="MyController">
<kendo-grid k-options="mainGridOptions" id="tblCustomers"></kendo-grid>
</body>
</html>
Screenshot