Jquery EasyUI Combotree只能选择叶子节点且叶子节点有多选框

Jquery EasyUI Combotree单选框,Jquery EasyUI Combotree只能选择叶子节点

EasyUI Combotree叶子节点增加单选框

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

©Copyright 蕃薯耀 2018年4月28日

http://www.cnblogs.com/fanshuyao/

建议使用方式三(完美版)

一、方式一,最简单(只能单选叶子节点,叶子节点前面无多选框)

  1. $("xxxId").combotree({
  2. data : [{……},{……},{……}],//数据省略
  3. required: false,
  4. onBeforeSelect : function(node){
  5. if(!$(this).tree("isLeaf", node.target)){//如果不是叶子节点,不让选择
  6. return false;
  7. }
  8. }
  9. });

 二、方式二:控制只能选一项,选中某一项后后面不能再勾选(体验比较生硬)

  1. $("xxxId").combotree({
  2. multiple : true,//设置可以多选,显示多选框,不设置不会出现多选框
  3. data : [{……},{……},{……}],//数据省略
  4. required: false,
  5. checkbox : true,//显示多选框
  6. onlyLeafCheck : true,//只在叶子节点显示多选框
  7. onBeforeSelect : function(node){
  8. if(!$(this).tree("isLeaf", node.target)){//如果不是叶子节点,不让选择
  9. return false;
  10. }
  11. },
  12. onBeforeCheck : function(node, checked){//控制只能选一项
  13. if(checked){//当前为选中操作
  14. var nodes = $(this).tree("getChecked");
  15. //控制只能选一项,选中某一项后后面不能再勾选
  16. if(nodes.length == 0){
  17. return true;
  18. }else{
  19. return false;
  20. }
  21. }else{//当前为取消选中操作
  22. return true;
  23. }
  24. }
  25. });

 三、方式三:随意选择任意一项,但只能选一项(完美版)

  1. $("xxxId").combotree({
  2. multiple : true,//设置可以多选,显示多选框,不设置不会出现多选框
  3. data : [{……},{……},{……}],//数据省略
  4. required: false,
  5. checkbox : true,//显示多选框
  6. onlyLeafCheck : true,//只在叶子节点显示多选框
  7. onBeforeSelect : function(node){
  8. $(this).tree("check", node.target);//控制点击文字时也能勾选
  9. return false;//避免不是选择勾选框而是点击文字出现黄色的选中条纹
  10. },
  11. onBeforeCheck : function(node, checked){//控制只能选一项
  12. if(checked){//当前为选中操作
  13. var nodes = $(this).tree("getChecked");
  14. //控制只能选一项,选中某一项后后面不能再勾选
  15. if(nodes.length > 0){
  16. for(var i=0; i<nodes.length; i++){
  17. $(this).tree("uncheck", nodes[i].target);//清除之前选中的项
  18. }
  19. }
  20. }
  21. }
  22. });

 方法三中:onBeforeSelect方法返回false,避免第一次点击文字选中后,再重新打开选择,不点击文字,直接勾选多选框,第一次点击的文字有黄色背景的情况,如下:

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

©Copyright 蕃薯耀 2018年4月28日

http://www.cnblogs.com/fanshuyao/

Jquery EasyUI Combotree只能选择叶子节点且叶子节点有多选框的更多相关文章

  1. easyui combotree 只能选择子节点

    //区号只能选子节点 $("#quhao").combotree({ onBeforeSelect: function (node) { //返回树对象 var tree = $( ...

  2. Jquery EasyUI Combotree根据选中的值展开所有父节点

    Jquery EasyUI Combotree根据选中的值展开所有父节点  Jquery EasyUI Combotree 展开父节点, Jquery EasyUI Combotree根据子节点选中的 ...

  3. Jquery EasyUI Combotree和 EasyUI tree展开所有父节点和获取完整路径

    Jquery EasyUI Combotree展开所有父节点 Jquery EasyUI Combotree获取树完整路径 Jquery EasyUI tree展开所有父节点 Jquery EasyU ...

  4. esayui combotree 只能选择子节点

    esayui combotree 只能选择子节点用onBeforeSelect:参数是node,节点被选中之前触发,返回false取消选择动作. 网上找了好多都没一个可用的,要想知道他是子节点还是根节 ...

  5. Jquery EasyUI Combotree 初始化赋值

    Jquery EasyUI Combotree 初始化赋值 ================================ ©Copyright 蕃薯耀 2018年5月7日 https://www. ...

  6. 雷林鹏分享:jQuery EasyUI 树形菜单 - 树形网格惰性加载节点

    jQuery EasyUI 树形菜单 - 树形网格惰性加载节点 有时我们已经得到充分的分层树形网格(TreeGrid)的数据. 我们还想让树形网格(TreeGrid)按层次惰性加载节点. 首先,只加载 ...

  7. EasyUI Combotree只选择叶子节点

    EasyUI Combotree的方法拓展自Combo和Tree.而Tree有一个onBeforSelect事件来帮助我们实现只选择叶子节点的功能. Tree事件需要 'node' 参数,它包括下列属 ...

  8. 解决juqery easyui combobox只能选择问题

    1.首先设定框为 combobox样式,该字段值为了进行值的显示 <tr class="odd_row"> <td class="TableLabel_ ...

  9. Qt树形控件QTreeView使用1——节点的添加删除操作 复选框的设置

    QtreeView是ui中最常用的控件,Qt中QTreeWidget比QTreeView更简单,但没有QTreeView那么灵活(QTreeWidget封装的和MFC的CTreeCtrl很类似,没有m ...

随机推荐

  1. 腾讯云CDN python SDK

    腾讯云CDN python SDK 博主在开发时偶尔要用到CDN,感觉适合学生党的应该是腾讯云的CDN了,还提供了每月10G的流量,博主平时学习使用已经足够了. 代码 #coding=utf-8 fr ...

  2. Visual Studio VS使用freopen调试控制台闪退

    解决方法 freopen("CON", "r", stdin);    system("pause>nul"); 暂停函数之前,使用f ...

  3. JS_高程4.变量,作用域和内存问题(2)执行环境及作用域

    1.执行环境:执行环境定义了变量或函数有权访问的其他数据,决定了它们各自的行为, 每个执行环境都有一个与之相关联的变量对象,环境中定义的所有变量和函数都保存在这个对象中. 2.全局执行环境: 最外围的 ...

  4. JS的document.links函数使用示例

    ? <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title&g ...

  5. Gradle初识

    一.安装配置 gradle官方网站https://gradle.org/,下载下来是一个压缩包,解压到合适的目录即可,然后配置环境变量(GRADLE_HOME,Path),略去. 二.IDEA配置 N ...

  6. SpringDataJpa学习

    # SpringBoot Jdbc JPA JPA是`Java Persistence API`的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的 ...

  7. Linux系统中如何查找大文件或文件夹的方法

    在Windows系统中,我们可以使用TreeSize工具查找一些大文件或文件夹,非常的方便高效,在Linux系统中,如何去搜索一些比较大的文件呢?下面我整理了一下在Linux系统中如何查找大文件或文件 ...

  8. 【网络安全】SSLSplit实现中间人攻击

    中间人攻击,即在中间监听获取网络数据以便获取的有价值的信息实现攻击破坏的目的,即client-mid man-server,此处介绍的sslsplit可以作为mid man监听ssl信息及HTTP信息 ...

  9. BI 系列随笔列表 (SSIS, SSRS, SSAS, MDX, SQL Server)

    微软 BI ETL 架构设计 如何在 ETL 项目中统一管理上百个 SSIS 包的日志和包配置框架 如何管理和记录 SSIS 各个 Task 的开始执行时间和结束时间以及 Task 中添加|删除|修改 ...

  10. PowerShe 消息提示框测试

    1. 使用powerShell 弹出一个简单的消息框,代码如下,创建test.ps1脚本文件. $ConfirmPreference = 'None' $ws = New-Object -ComObj ...