kendoTreeView,需要注意的地方
今天使用了下kendoUI中的TreeView控件,一开始的时候总是不成功,
总是会报 Uncaught TypeError: Cannot read property 'toLowerCase' of undefined,
后来查询相关的API,原来TreeView是比较特殊的控件,不能绑定kendo.data.DataSource数据源,
数据源必须是kendo.data.HierarchicalDataSource类型的数据源,
将数据源改为该类型的以后,任然报错,而且是奇怪的错误提示。。。
Uncaught TypeError: e.slice is not a function
使我又郁闷了半天,经由同事的提醒,我突然发现树的数据可能有问题,
代码如下:
/**
* 获取文档设置信息(树)
*/
@RequestMapping("/getDocSettingsTree")
@ResponseBody
public String getDocSettingsTree(HttpSession session,HttpServletRequest request) {
try{
Settings rootSettings = new Settings();
rootSettings.setSettingId("-1");
rootSettings.setSettingName("文档分类");
rootSettings.setSettingType("2");
getSubSettings(rootSettings);
String settingList = JsonMapper.alwaysMapper().toJson(rootSettings);
return settingList; }catch(Exception e){
return "查询出错!";
}
}
这里的根节点是单个对象,必须在包装成LIST才行,
于是修改代码为:
/**
* 获取文档设置信息(树)
*/
@RequestMapping("/getDocSettingsTree")
@ResponseBody
public String getDocSettingsTree(HttpSession session,HttpServletRequest request) {
try{
Settings rootSettings = new Settings();
rootSettings.setSettingId("-1");
rootSettings.setSettingName("文档分类");
rootSettings.setSettingType("2");
getSubSettings(rootSettings);
//必须包装成LIST回传
List<Settings> listSettings = new ArrayList<Settings>();
listSettings.add(rootSettings);
String settingList = JsonMapper.alwaysMapper().toJson(listSettings);
return settingList; }catch(Exception e){
return "查询出错!";
}
}
这样问题便解决了
JS代码:
function initTree(){
$.ajax({
type: "POST",
async: true,
url: ctx + "/Settings/getDocSettingsTree",
dataType: "json",
success: function(data){
var dataSource = new kendo.data.HierarchicalDataSource({
data: data,
schema: {
model: {
id: "settingId",
settingType: "settingType",
children: "subSettings"
}
}
});
$("#docTree").kendoTreeView({
dataSource: dataSource,
dataValueField: "id",
dataTextField: "settingName"
});
$("#docTree").data("kendoTreeView").expand(".k-item");
}
});
}
这里的重点就是数据源的格式必须是kendo.data.HierarchicalDataSource,
并且数据是LIST形式的。
kendoTreeView,需要注意的地方的更多相关文章
- 解决VS2008在win7找不到输入序列号的地方
1.VS2008在Windows7 打开维护界面看不到可以输序列号的地方. 因为微软把他隐藏了. 2.我们可以借用工具把他显示出来 下载地址:http://www.zlsoft.com/techbbs ...
- 使用Google Closure Compiler高级压缩Javascript代码注意的几个地方
介绍 GCC(Google Closure Compiler)是由谷歌发布的Js代码压缩编译工具.它可以做到分析Js的代码,移除不需要的代码(dead code),并且去重写它,最后再进行压缩. 三种 ...
- eclipse项目上面有个红叉,但是没有任何地方有错误
eclipse项目上面有个红叉,但是没有任何地方有错误,clear,refresh,重启都试过了,依然没用, 后来我换了一个workspace,编译的时候提示: Description Resourc ...
- javascript中的一些核心知识点以及需要注意的地方
前言 近期杂事甚多,这些事情的积累对知识体系的提升有好处,但是却不能整理出来,也整理不出来 比如说我最近研究的Hybrid在线联调方案便过于依赖于业务,就算分享也不会有人读懂,若是抽一点来分享又意义不 ...
- android 实现点击listview 空白地方隐藏菜单
思路:重写ListView的setOnTouchListener事件: ListView.setOnTouchListener(new OnTouchListener(){ @Override pub ...
- java 将一张图片拷贝到另外一个地方。(IO流)
package com.beiwo.inputstream; import java.io.FileInputStream; import java.io.FileOutputStream; impo ...
- 屌丝程序员的梦想 (二) 屌丝IT梦开始地方
校区的周围有很多的网吧,一个对电子游戏迷恋了许久的青少年来说,那绝对是不可不去的地方,键盘,鼠标,显示器,那一切看起来都那么完美,那么似曾相识,是啊,魂牵梦绕的IT梦...哦..当时那只是电子游戏梦. ...
- es6还欠完善的地方
const的可变性 const用于声明常量. 什么是常量,声明后的值不可更改. 对于值类型,比如string,number等等.const声明确实有效. const str = "strin ...
- js平滑滚动到顶部,底部,指定地方
[原文链接] 采用锚点进行页面中的跳转的确很方便,但是要想增加网页的效果,可以使用jquery中的animate,实现滚动的一个动作,慢慢的滚动到你想跳转到的位置,从而看起来会非常高大上. [示例演示 ...
随机推荐
- 在Eclipse中使用JUnit4进行单元测试(初级篇)
首先,我们来一个傻瓜式速成教程,不要问为什么,Follow Me,先来体验一下单元测试的快感! 首先新建一个项目叫JUnit_Test,我们编写一个Calculator类,这是一个能够简单实现加减乘除 ...
- android-8~23 View.java - dispatchTouchEvent源码
android-8 /** * Pass the touch screen motion event down to the target view, or this * view if it is ...
- git学习2:版本库
创建版本库 版本库,又称仓库,英文名为repository,版本库内的所有文件都可以被Git管理起来,即每个文件的修改.删除,Git都能跟踪. 1,在目录中创建版本库 在目录中有两种创建版本库的方法, ...
- [Mongdb] 关于Replica Set复制集奇数成员限制的解释--待完善
一.缘由: http://blog.itpub.net/29254281/viewspace-1176821/ http://blog.chinaunix.net/uid-20726500-id-54 ...
- HTML5 History API实现无刷新跳转
在HTML5中, 新增了通过JS在浏览器历史记录中添加项目的功能. 在不刷新页面的前提下显示改变浏览器地址栏中的URL. 添加了当用户单击浏览器的后退按钮时触发的事件. 通过以上三点,可以实现在不刷新 ...
- 安装LockBox 3.7.0,用LockBox加密解密!
LockBox 官 方 网 站:http://lockbox.seanbdurkin.id.au/HomePage LockBox的Github 网址:https://github.com/S ...
- bootstrap-滚动监听
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...
- Bugtags 远程配置功能介绍
远程配置顾名思义是在不发版的情况下,更改应用的行为和外观.举个例子,如下图:在 Demo Page 中,BUTTON 的颜色不一样,如果想实时修改按钮颜色,测试不同颜色的按钮实际点击情况,该怎么做呢? ...
- PSP(11.2~11.9)
5号 类别c 内容c 开始时间s 结束e 中断I 净时间T GUI 学习QT视频 9:00 10:10 0m 70m 复习 软件工程 10:10 11:10 10 50m 复习 软件工程 14:20 ...
- [ 转载 ] kernel32.BaseThreadInitThunk
Edited by wap2k, 20 October 2014 - 07:52 PM. This function is called to start a Win32 thread. Its pu ...