kendo分多个版本,核心UI免费版.NET,JAVA,PHP对应的前后端开发版。

基础免费版开放的UI经多个测试,与收费封装的UI并无区别,收费版提供了后端代码和前端封装语法,使不懂JS前端的也可简易开发。

基础免费版与专业版的DEMO差距实在太大,基础版的DEMO只提供最基础的DEMO样例,比如listView的服务器端翻页,官网上的样例无一个涉及,通通都是前一次加载完全部数据前端翻页。

实际开发的话,后端的开发人员,不愿购买其各语言封装专业版,或想写纯JS,再或者需要深度定制拓展的,可以在收费的DEMO中得到应有的API信息。

从开发版的DEMO中看出前端生成的JS代码数据样例,再看后端提交,处理,返回的数据。便可以纯JS的方式操作和自定义拓展功能。

实际工作并不复杂

以下是个人工作中以这种思路实现的部分功能展示和代码。

KenDo UI ListView实现的聊天记录统计展示功能(还未作完)

    <script>
function getdatestring(dt) { var s = dt.indexOf('(');
var e = dt.indexOf(')');
var strdate = dt.substring(s + 1, e);
//return strdate;
return new Number(strdate);
} //1000 创建未接入会话
//1001 接入会话
//1002 主动发起会话
//1004 关闭会话
//1005 抢接会话
//2001 公众号收到消息
//2002 客服发送消息
//2003 客服收到消息 function isUserSendInfo(ope) {
if (ope == 2003 || ope == 2001) { return "in";
}
if (ope == 2002) return "out"; return "";
}
function gethidden1(ope)
{
if (ope == 2003 || ope == 2001) return "none";
else return "";
}
//当是客服发信息时
function gethidden2(ope) {
if (ope == 2002) return "none";
else return "";
}
</script> <script type="text/x-kendo-template" id="template2"> <li class="#:isUserSendInfo(opercode)#">
<div class="message">
<span class="arrow"></span>
<a class="name" style="display: #:gethidden2(opercode)#; ">#:nickname#</a>
<span class="datetime">#:kendo.toString(new Date(getdatestring(date)),"yyyy-MM-dd")# #:kendo.toString(new Date(time),"HH:mm")#</span>
<a class="name" style="display:#:gethidden1(opercode)#; ">#:worker#</a>
<span class="body">#:text#</span>
</div>
</li> </script>
<div class="demo-section">
<div class="slimScrollDiv" style="position: relative; overflow: hidden; width: auto; height: 600px;">
<div id="listView" class="scroller" data-height="600px" data-always-visible="1" data-rail-visible1="1" style="overflow: hidden; width: auto; height: 600px;">
<ul class="chats" id="ullist"> </ul>
</div>
</div>
<div id="pager" class="k-pager-wrap"></div>
</div>
<script>
$(function() {
var dataSource = new kendo.data.DataSource({
"transport":
{
"prefix": "",
"read": { "url": "/Admin/MpCustomerService/MpCustomerServiceConfig_Read_List?mpaccountid=112" }
},
"pageSize": 10,
"page": 1,
"total": 0,
"serverPaging": true,
//"serverSorting": true,
//"serverFiltering": true,
//"serverGrouping": true,
//"serverAggregates": true,
"type": "aspnetmvc-ajax",
"filter": [],
"schema": {
"data": "Data",
"total": "Total",
"errors": "Errors",
}
});
$("#pager").kendoPager({
dataSource: dataSource
}); $("#ullist").kendoListView({
dataSource: dataSource,
template: kendo.template($("#template2").html())
});
});
</script>

从收费版支持较好的前后端DEMO中获知API信息,再用于免费版的应用开发。

最新文章

  1. [译]理解Javascript的异步等待
  2. memcached完全剖析系列——一、memcached基础
  3. UIButton(在代码中使用)
  4. (C# ) 解析XML。
  5. 【CentOS】Eclipse中svn插件使用
  6. Qt中的 Size Hints 和 Size Policies
  7. Linux 线程属性函数总结
  8. 【C++学习之路】派生类的构造函数(一)
  9. 给定n,求1/x + 1/y = 1/n (x&lt;=y)的解数~hdu-1299~(分解素因子详解)
  10. C++对象模型(五):The Semantics of Data Data语义学
  11. 电子产品使用感受之-- AirPods + Apple Watch S4 = Smart iPod ?
  12. 窗口置顶 - 仿TopWind
  13. 解决Oracle登录极慢的问题
  14. Node.jsでMySQLを使うメモ
  15. xdoj-1298(模拟--简易SQL解释器)
  16. HPROF - Heap Profile
  17. Java给图片和PDF文件添加水印(图片水印和文字水印)
  18. C++多线程,互斥,同步
  19. IOS内购支付服务器验证模式
  20. IIS环境下上传文件失败

热门文章

  1. Linux用户权限常见命令
  2. vue中使用elementUI中表格的v宽度,字体大小
  3. 装饰器参数加log
  4. 吴裕雄--天生自然Linux操作系统:Linux 安装
  5. Ubuntu python多个版本管理
  6. Java static 静态代码块、代码块
  7. Sublime Text 3 快捷键的汇总
  8. spring自定义aop
  9. javascript获取数组最后一个元素(三种方法)
  10. python基础——散列类型