`
yangshengli
  • 浏览: 4349 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

关于easyui1.3.2的combotree只有点击树叶才被选中和点击整个节点都可以展开/收缩的解决方法

阅读更多

       最近带个项目,用的easyui1.3.2版本,发现combotree这个控件用起来不是很人性化,所以就把它的源代码进行了修改,可恨的是源码都经过了加密处理,看起来很是不爽,不过我还是找到了相应的代码,并进行了修改,在我的电脑上测试是没有问题的,如果大家用着有问题可以一起讨论解决!说正题,如下

       用的时候发现的问题有如下2点:

       1.点击树枝也可以选择,实际应用中大家应该都希望只有点击树叶时才能选择

       2.只有点击三角图标才可以展开/收缩,这个及其不方便,那个三角图标又小,改善后点击整个NODE都可以展开/收缩

代码如下:

        原代码:

}).bind("click",function(e){
var tt=$(e.target);
var _b1=tt.closest("div.tree-node");
if(!_b1.length){
return;
}
if(tt.hasClass("tree-hit")){
_119(_ad,_b1[0]);
return false;
}else{
if(tt.hasClass("tree-checkbox")){
_d9(_ad,_b1[0],!tt.hasClass("tree-checkbox1"));
return false;
}else{
_157(_ad,_b1[0]);
_ae.onClick.call(_ad,_b4(_ad,_b1[0]));
}
}
e.stopPropagation();
}).bind("dblclick",function(e){

 

        修改后的代码:

       

}).bind("click",function(e){
var tt=$(e.target);
var _b1=tt.closest("div.tree-node");
if(!_b1.length){
return;
}
/** 
 *  修改于2013-10-22 
 * 作用:
 * 新加的属性onlySelectLeaf:只有点击树叶才被选中,默认为否
 * 1.只有点击树叶才被选中(之前点击树枝也可以选择)
 * 2.点击整个节点都可以展开/收缩(之前只有点击三角图标才可以展开/收缩)
 */
if(tt.hasClass("tree-checkbox")){
    _d9(_ad,_b1[0],!tt.hasClass("tree-checkbox1"));
    return false;
}else{
    if(tt.parent().children("span.tree-file").length || (!_ae.onlySelectLeaf && !tt.hasClass("tree-hit"))){
	_157(_ad,_b1[0]);
	_ae.onClick.call(_ad,_b4(_ad,_b1[0]));
    }else{
	_119(_ad,_b1[0]);
	return false;
    }
}
/*********** end ***********/
e.stopPropagation();
}).bind("dblclick",function(e){
把下面的代码覆盖到上面的代码及可,这个只适用1.3.2其它版本的源代码我没试,可能不一样

 

2
0
分享到:
评论

相关推荐

    easyui的combotree控件绑定json数据的例子

    Combotree控件将树形结构和输入框结合在一起,用户可以选择树中的一个或多个节点,然后在输入框中显示所选节点的文本。这对于处理如组织结构、地区分类等具有层次关系的数据非常实用。 要实现Combotree与JSON数据的...

    easyui_combotree_search

    通过"easyui_combotree_search"项目,我们可以学习到如何在实际应用中整合前端和后端技术,实现交互式的树形搜索功能。这不仅要求开发者熟悉JavaScript和相关库的使用,还需要了解后端数据处理和接口设计。同时,...

    EasyUI 1.3.2 API CHM

    EasyUI 1.3.2 API CHM 英文版

    EasyUI Tree Combotree 模糊搜索

    EasyUI Tree Combotree 的模糊所搜

    easyui1.3.2及API文档资料

    - **EasyUI API**:`EasyUI-API+1.3.2.chm`文件是官方提供的API文档,包含了所有组件的方法、属性和事件,是开发过程中的重要参考。例如,DataGrid的`loadData`方法用于加载数据,`onDblClickRow`事件则在用户双击...

    jQuery EasyUI 1.3.2 离线API简体中文版

    近期由于参与的一个Web系统项目前台使用了EasyUI作为Web解决方案,所以查了一下EasyUI的相关资料,发现离线的中文API不太多,而且版本都比较老,索性自己讲EasyUI官网给扣下来,然后做了翻译,文档是2月份过年的时候...

    easyUI1.3.2.zip

    在“easyUI 1.3.2.zip”这个压缩包中,我们可以找到与 EasyUI 开发相关的各种资源和文档。下面将详细阐述这些文件所代表的知识点。 1. **licence_gpl.txt** 和 **license_commercial.txt**:这两个文件分别是 GNU ...

    easyui1.3.2

    版本 1.3.2 是 EasyUI 的一个稳定版本,它在前一版本的基础上进行了优化和功能增强,以提升用户体验和开发者的工作效率。 EasyUI 的核心是 jQuery,这是一个快速、简洁的 JavaScript 库,用于简化 HTML 文档遍历、...

    jQuery EasyUI 1.3.2 API离线文档

    jQuery EasyUI 是一个基于 jQuery 的前端框架,它简化了网页用户界面开发,提供了丰富的组件和交互功能。1.3.2 版本是其历史版本之一,包含了一系列增强和改进。离线文档是为了方便开发者在没有网络的情况下查阅相关...

    easyui 1.3.2中文API

    本文将详细介绍EasyUI 1.3.2版本中的几个核心组件——窗口(Window)、日历(Calendar)和下拉框(ComboBox)的使用方法、属性及事件。 一、窗口(Window) 窗口是EasyUI中常用的基础控件,常用于弹出对话框或浮动...

    Easyui combotree idField扩展Demo

    这些都可以通过 combotree 提供的各种方法和事件来实现,如 `loadData` 方法用于动态加载数据,`onSelect` 事件用于监听用户选择节点的行为。 综上所述,"Easyui combotree idField扩展Demo"是一个展示如何自定义...

    easyUI 1.3.2及中文API文档离线版(兼容IE6)

    例如,要创建一个简单的对话框,可以先在页面中引入 EasyUI 的 CSS 和 JavaScript,接着创建一个 div 元素,并添加 `dialog` 类,再通过 JavaScript 调用 `$.dialog()` 方法来初始化和控制对话框。 此外,由于 IE6 ...

    JQuery easyUI 1.3.2 API及Demo离线版本

    **jQuery EasyUI 1.3.2 API及Demo离线版本**是JavaScript开发中的一个宝贵资源,它包含了一系列用于快速构建用户界面的组件和工具。EasyUI是基于jQuery的一个轻量级框架,它极大地简化了网页开发过程,尤其是对于...

    jquery-easyui_combotree异步树的生成代码

    } else { // 如果是节点被选中后的首次加载事件 $('#btnQuery').click(); } } }); // 设置timeout是为了确保combotree完成初始化后才设置value值 setTimeout("$('#combotree1').combotree('setValue','${...

    easyui1.3.2全站文件(含api,demo)

    例如,对话框(dialog)、表单(form)、数据网格(datagrid)、下拉树(combotree)等组件都有详细的文档,这对于理解和使用 EasyUI 非常关键。 3. **示例(demo)**:提供的 demo 文件包含了许多实际应用场景,...

    easyui1.3.2 及主题

    EasyUI 是一个基于 jQuery 的轻量级前端框架,它提供了丰富的组件和强大的功能,使得开发者可以快速构建用户界面。在1.3.2版本中,EasyUI 针对IE7、8、9浏览器进行了良好的兼容性处理,使得在这些较老的浏览器环境下...

    jquery-easyui-1.3.2 demo

    通过这些示例,你可以学习如何绑定数据源,如何触发事件,以及如何实现搜索和展开/折叠节点等功能。 3. **Datebox**:日期选择器组件提供了日期和时间的选择功能,支持各种格式化和验证规则。在demo中,你可以了解...

    jQuery EasyUI 1.3.2 离线API、Demo(最齐全的)

    总的来说,jQuery EasyUI 1.3.2 提供了一套完整的前端解决方案,使开发者能够高效地构建具有专业外观和功能的Web应用。通过离线API和Demo合集,开发者可以在任何时间、任何地点深入学习和实践,提升开发效率。

    EasyUI 中combotree 默认不能选择父节点的实现方法

    这需要添加如下字段就行,搜了半天,说什么判断是不是子节点什么的,都是胡扯! onlyLeafCheck:true, //病因分类 $('#artReason').combotree({ width:200, method:'GET', //url: '${ctx}/business/dict/json/...

    easyui-1.3.2

    - 文档:关于EasyUI的API文档和使用指南。 使用EasyUI时,开发人员需要将引用的CSS和JS文件引入到HTML页面中,然后通过jQuery选择器和方法来创建和操作组件。例如,创建一个数据网格可以这样写: ```html 数据网格...

Global site tag (gtag.js) - Google Analytics