博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(5)kendo UI使用基础介绍与问题整理——Grid问题/显示效果的一些问题
阅读量:6260 次
发布时间:2019-06-22

本文共 3192 字,大约阅读时间需要 10 分钟。

     由于我参与的项目中涉及到一些不一样的显示效果,这里对用到的几个进行简单的整理和说明。

 一、给表头和内容添加样式

        headerAttributes、attributes这两个属性分别是给表头和表内容添加样式的两个属性,使用demo如下:

{         field: "Name",         title: "名称",         minResizableWidth: 220,         headerAttributes: {           style: "text-align: left;", //列标题居左              class: "color-red"       },         attributes: {             style: "text-align: left;", //列内容居左             class: "color-red"         }},

   可以添加style或者class设置样式。可以在官网找到这部分的参考demo。

 二、Multi-column headers

        官网效果截图如下:

        

       简要代码如下:

columns: [{            field: "CompanyName",            title: "Company Name",            width: 420        },        {            title: "Contact Info",            columns: [{                field: "ContactTitle",                title: "Contact Title",                width: 200            },{                field: "ContactName",                title: "Contact Name",                width: 200            },{                title: "Location",                columns: [ {                    field: "Country",                    width: 200                },{                    field: "City",                    width: 200                }]            },{                field: "Phone",                title: "Phone"            }]        }]

很容易理解,就是嵌套的办法。

 

三、自定义编辑列表项

         (啊,心好累,之前写好的内容保存的时候竟然出了问题,还要再写一遍o(╥﹏╥)o)

         首先需要解释一下,我这边说的“自定义编辑列”,并不是Grid的editable的那种编辑状态,而是列表项里带有可编辑的内容,如:input、dropdownlist、textare等可以编辑的组件。

         下面上一个简略的demo:      

{           field: "Name",           title: "名字",           width: 100,           template: function (e) {                 return '';           }}

     通过上面的代码,我所谓的自定义编辑列表项的意思,大家应该明白了。

     (1)解决自定义编辑列表项Gird的数据保存问题

     对于带有自定义编辑列表项的Grid,可能在实际应用的时候,会遇到数据保存的问题,就是Gird的dataSource数据保存的问题。

     解决保存数据的问题:

     思路:给可编辑的输入框或下拉框,添加一个onblur事件,然后在onblur事件中添加修改dataSource的方法。

     代码如下:

//Grid column{           field: "Name",           title: "名字",           width: 100,           template: function (e) {                 return '';           }}//changeNamefunction changeName(Name, Id) {    var data = $("#grid").data("kendoGrid").dataSource.data();    if (typeof (data) != "undefined") {        for (var i = 0; i < data.length; i++) {            if (data[i].Id == Id) {                data[i].Name= Name;                break;            }        }    }};

 

(2)初始化组件的问题

 如果列表项是dropdownlist,就会涉及到初始化dropdownlist组件的问题,我的解决方法是把初始化的代码放到databound里。

 简略的初始化dropdownlist的代码如下:

dataBound: function () {          if(this.dataSource.data().length>0) {                var selects = $("select[name='dropdownlist']");                if (selects.length > 0) {                    for (var i = 0; i < selects.length; i++) {                        //这里写dropdownlist的初始化代码                        /*这里大家自己发挥吧*/                    }                }            } }

 

 

=======================

 四、在一个页面加载数据实现的滑动翻页(官网有此demo)

官网demo地址:https://demos.telerik.com/kendo-ui/grid/virtualization-remote-data

描述

在某些情况下,您可能需要在网格中使用大量的数据,并且由于浏览器资源有限,一次获取并处理这些数据会造成性能损失。

幸运的是,Kendo UI网格有一个称为数据虚拟化的解决方案,可以缓解在处理大量数据时的速度减慢。当通过scrollable-> virtual配置选项启用时,它将显示网格内容的垂直滚动条,并仅呈现通过网格数据源的pageSize属性设置的项目数。拖动滚动条并超出pageSize后,它会自动请求检索并呈现下一组网格行。

网格虚拟化功能支持本地和远程数据,而在本演示中,记录是从远程端点获取的。

demo:

 

转载于:https://www.cnblogs.com/lindaCai/p/8252546.html

你可能感兴趣的文章
SQL优化器原理 - 查询优化器综述
查看>>
微服务架构 vs SOA架构
查看>>
maven项目注意
查看>>
Git学习分享
查看>>
阿里云移动端播放器高级功能---画面控制
查看>>
Ethereum地址是如何生成的
查看>>
峰采 #2
查看>>
高阶组件之属性代理
查看>>
Python 比特币 教程 之一:创建机器人
查看>>
extract-text-webpack-plugin用法
查看>>
java中的多线程你只要看这一篇就够了
查看>>
利用tornado实现表格文件预览
查看>>
深入call apply bind
查看>>
「前端面试题系列6」理解函数的柯里化
查看>>
用友云开发者中心助你上云系列之在线调试
查看>>
【跃迁之路】【724天】程序员高效学习方法论探索系列(实验阶段481-2019.2.14)...
查看>>
个人博客四|注册登录退出功能后台开发
查看>>
工作中常用到的ES6语法
查看>>
Django-Signals信号量
查看>>
flac格式转换mp3格式要用什么软件
查看>>