`

Kendo Dynamic Grid According to JSON Data

 
阅读更多

Referenc:

http://www.telerik.com/forums/binding-kendoui-grid-to-dynamic-column-and-values-kendo-ui-complete-resources-buy-try

 

1.html page

 

<!DOCTYPE html>

<html>

<head>

<link href="http://cdn.kendostatic.com/2013.3.1324/styles/kendo.common.min.css" rel="stylesheet" type="text/css" />

<link href="http://cdn.kendostatic.com/2013.3.1324/styles/kendo.rtl.min.css" rel="stylesheet" type="text/css" />

<link href="http://cdn.kendostatic.com/2013.3.1324/styles/kendo.flat.min.css" rel="stylesheet" type="text/css" />

<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>

<script src="http://cdn.kendostatic.com/2013.3.1324/js/kendo.all.min.js"></script>

<meta charset=utf-8 />

<title>Grid autogenerate columns with CRUD</title>

</head>

<body>

  <div id="grid" style="width:600px;"></div>

</body>

</html>

 

 

2.Js file

 

var data = [{

  "Name": "daya",

  "Role": "Developer",

  "Dept": "Dev",

  "Dept1": "Dev",

  "Date": "\/Date(836438400000)\/",

  "Balance": 23

}, {

  "Name": "siva",

  "Role": "Developer",

  "Dept": "Dev",

  "Dept1": "Dev",

  "Date": "\/Date(836438400000)\/",

  "Balance": 23

}, {

  "Name": "sivadaya",

  "Role": "Developer",

  "Dept": "Dev",

  "Dept1": "Dev",

  "Date": "\/Date(836438400000)\/",

  "Balance": 23

}, {

  "Name": "dayasiva",

  "Role": "Developer",

  "Dept": "Dev",

  "Dept1": "Dev",

  "Date": "\/Date(836438400000)\/",

  "Balance": 23

}];

 

//in the success handler of the ajax method call the function below with the received data:

var dateFields = [];

generateGrid(data)

 

function generateGrid(gridData) {

 

  var model = generateModel(gridData[0]);

 

  var parseFunction;

  if (dateFields.length > 0) {

    parseFunction = function (response) {

      for (var i = 0; i < response.length; i++) {

        for (var fieldIndex = 0; fieldIndex < dateFields.length; fieldIndex++) {

          var record = response[i];

          record[dateFields[fieldIndex]] = kendo.parseDate(record[dateFields[fieldIndex]]);

        }

      }

      return response;

    };

  }

 

  var grid = $("#grid").kendoGrid({

    dataSource: {

      data: gridData,

      schema: {

        model: model,

        parse: parseFunction

      }

    },

    editable: true,

    sortable: true

  });

}

 

function generateModel(gridData) {

  var model = {};

  model.id = "ID";

  var fields = {};

  for (var property in gridData) {

    var propType = typeof gridData[property];

 

    if (propType == "number") {

      fields[property] = {

        type: "number",

        validation: {

          required: true

        }

      };

    } else if (propType == "boolean") {

      fields[property] = {

        type: "boolean",

        validation: {

          required: true

        }

      };

    } else if (propType == "string") {

      var parsedDate = kendo.parseDate(gridData[property]);

      if (parsedDate) {

        fields[property] = {

          type: "date",

          validation: {

            required: true

          }

        };

        dateFields.push(property);

      } else {

        fields[property] = {

          validation: {

            required: true

          }

        };

      }

    } else {

      fields[property] = {

        validation: {

          required: true

        }

      };

    }

 

  }

  model.fields = fields;

 

  return model;

}

分享到:
评论

相关推荐

    Kendoui grid多级分组表格展现

    应用kendoui grid实现的多级分组表格展现,里面包含了表格的分组统计以及单表合计功能、还有针对表格的刷新以及子表格刷新功能。此功能是在原有demo版本上改进,增加了很多的个别需求实现,在原来的版本是做不到的。...

    动态设置显示kendoui grid控件某一列的格式

    var grid = $("#grid").data("kendoGrid"); var dateColumn = grid.columns.find(function(col) { return col.field === "dateField"; }); dateColumn.format = "{0:MM/dd/yyyy}"; grid.refresh(); }); ``` 在...

    标准kendo ui-grid控件用法

    Kendo UI Grid是一款强大的数据网格组件,由Telerik公司开发,广泛应用于Web应用程序中,用于展示和操作结构化的数据。这个控件提供了丰富的功能,包括数据分页、排序、过滤、编辑、分组、汇总等,同时支持触摸设备...

    kendo-ui-js-grid.zip_Kendo_grid js

    在数据源方面,Kendo UI Grid支持多种类型的数据源,包括Ajax、JSON、XML等。在描述中提到的服务交互,通常指的是通过Ajax与后台服务器进行数据交换。我们可以配置Grid的数据源的`transport`属性,定义`read`、`...

    Kendo UI框架grid的Excel导出功能改进js代码

    Kendo UI框架提供了强大的Excel导出功能,通过Grid的saveAsExcel能方便地导出Grid中的数据,而且格式美观大方,使用起来也非常方便。但是在实际使用中不是很理想,主要有以下两个问题: 1. 导出的列数据是原始值 ...

    Kendo UI Grid

    Kendo UI ,在ASP.NET MVC 4中使用Kendo UI Grid

    Kendo UI Grid示例下载

    Kendo UI Grid为开发者提供了100多种丰富的网格功能,从基本的筛选、排序,到高级的编页、分层数据分组等等。毫不夸张的说,Kendo UI Grid是同类产品中数一数二的佼佼者。耳听为虚眼见为实,下面我为大家整理了它的...

    kendo ui 实现复杂表头

    该代码类里面实现的主要操作: 1.ajax 访问后代接口,并将结果返回值绑定到kendo ui 的grid上。 2. 实现复杂的kendo ui 的grid的表头设置,这个是本人亲自写的,并且经过验证是正确的

    Export-Grid-to-CSV

    var grid = $("#grid").data("kendoGrid"); var data = grid.dataSource.data(); // 获取数据 var csvContent = "data:text/csv;charset=utf-8,"; // CSV文件头部 data.forEach(function(item) { var values = ...

    kendo-grid-scroll:程序网格滚动选择 kendo-ui 库。 自动支持网格的虚拟模式

    剑道网格卷轴 kendo-ui 库的程序网格... kendoGrid ( { dataSource : { data : data , pageSize : 20 } , ... //init var kendoGridScroll = new KendoGridScroll . Model ( $ ( "#grid" ) , function ( gri

    KendoUI速查手册--中文

    1. 数据网格(Grid):Kendo UI Grid 是一个高度可配置的数据展示和管理工具,支持数据分页、排序、过滤、编辑等功能,同时提供了强大的行选择、分组、汇总和远程数据绑定能力。 2. 日历(Calendar):提供基本的...

    kendo_grid_api

    1. 数据绑定:Kendo Grid支持多种数据源绑定,包括JSON、XML、OData、Web API等。在C#环境中,通常通过控制器返回JSON数据,Grid根据这些数据自动生成表格。数据绑定可以通过配置`dataSource`对象来实现,设置`url`...

    React_Kendo:KendoUI Grid 作为 ReactJS 组件

    请注意,Kendo Grid 属于 Kendo UI 的“专业”版本,因此需要适当的许可才能使用。 因此,我不提供受版权保护的脚本/样式以避免违反 Telerik 的许可条款。 但是有 30 天的试用期: Kendo-Scripts 应该进入Scripts...

    kendo-grid-csv-download:添加从 Kendo UI Web Grid 控件下载数据的功能

    Kendo Grid 下载/导出到 CSV 使用客户端过滤和排序时,下载 Kendo UI 网格控件的排序、过滤内容(如果您使用免费版本,则可能会这样做)。依赖项: jQuery - 可能是任何版本,当然是任何足以支持 Kendo Grid 的最新...

    kendoui asp.net mvc

    以上代码示例展示了如何使用Kendo UI Grid,并通过Ajax从控制器的`GetData`方法获取数据。这种集成方式使得Kendo UI组件与ASP.NET MVC的MVC模式紧密融合,提高了开发效率和代码可维护性。 总之,Kendo UI for ASP...

    5种最流行好用的表格grid控件

    Kendo UI Grid支持多种数据源,如Ajax、JSON、XML,甚至本地数据。此外,它还具备响应式设计,可以适应不同设备的屏幕尺寸,是企业级应用的理想选择。 2. **jQuery Grid (jqGrid)** jqGrid是基于jQuery的开源表格...

    Kendo Grid editing 自定义验证报错提示的解决方法

    在开发Web应用时,Kendo UI的Kendo Grid是一个非常重要的组件,它提供了一种高效的方式来展示和编辑数据。Kendo Grid支持多种编辑模式,如弹出式编辑、内联编辑和分步编辑,同时也提供了强大的验证机制来确保输入的...

    Laravel开发-laravel-kendo-server-filters

    5. **JSON响应**:Laravel控制器方法应返回一个JSON响应,包含过滤后的数据,以便Kendo UI Grid可以更新其显示内容。 6. **Pagination**:Kendo UI Grid支持分页,因此你也需要处理分页逻辑,确保返回正确页码的...

    实现grid行 列的自定义添加和删除 绝对原创

    这两天项目需要,临时做了一个,没有封装,该grid可以实现列和行的自定义添加和删除,包括修改标题,以及列的右击添加事件。希望对你们有所帮助!双击列名可以对列名进行修改,右键列名可以选择左侧和右侧添加列以及...

    KendoUI的速查手册

    $("#grid").kendoGrid({ dataSource: { // DataSource配置 } }); ``` - **声明独立的DataSource实例**: ```javascript var dataSource = new kendo.data.DataSource({ // DataSource配置 }); $("#grid...

Global site tag (gtag.js) - Google Analytics