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. yii2 数据库和ActiveRecord

    Yii2数据库和 ActiveRecord 类 1.在 common/config/main-local.php 里面配置数据账号和密码. 2.ActiveRecord(活动记录,简称AR类),提供了 ...

  2. UE4入门(三)

  3. java第一次课

    package java第一周学习2; 达达20173435 信1705-2 import java.text.SimpleDateFormat; import java.util.Date; pub ...

  4. Java面试题集锦

    1. String.StringBuffer和StringBuilder的区别. (1)  String:存储数值不可改变的字符串 (2)  StringBuffer:可变字符序列.线程安全.效率低 ...

  5. css3的transform,translate和transition之间的区别与作用

    transform 和 translate transform的中文翻译是变换.变形,是css3的一个属性,和其他width,height属性一样 translate 是transform的属性值,是 ...

  6. cs331n 线性分类器损失函数与最优化

    tip:老师语速超快...痛苦= = 线性分类器损失函数与最优化 \(Multiclass SVM loss: L_{i} = \sum_{j \neq y_{i}} max(0,s_{i}-s_{y ...

  7. Sublime_正则查找替换

    在sublime编辑器中使用正则表达式对内容进行查找和替换: (1)Find——Replace... (2)出现下图界面 注意:点击左边第一个按钮,开启正则表达式功能. (3) (4)点击Replac ...

  8. JS_高阶函数(filter)

    //2017/7/18 //高阶函数:filter. //filter也是一个常用的操作,它用于把Array的某些元素过滤掉,然后返回剩下的元素.和map()类似,Array的filter()也接收一 ...

  9. vue中 如何使用less

    首先肯定是vue-cli全部就位: 1,安装依赖: npm install less less-loader --save 2,修改build-webpack.base.config.js文件,配置l ...

  10. 集群安装Java环境

    需要安装一个集群环境,发现全部要手动安装java.记录下安装Java环境的过程.虽然,依旧是挨个安装,但总算是有体系了. java 找到下载地址: https://www.oracle.com/tec ...