依赖layui form模块 复选框tree插件(拓展可根据属性单选还是多选,数据反选)

  近些天接的项目用的是layui。以前没用过,踩了很多坑,坑就不多说了,直接说layui的tree。因为自带的tree不满足需求,所以在论坛、博客上找了很久终于找到了可以复选的的插件,原文地址:https://blog.csdn.net/xianglikai1/article/details/79032278。这里谢谢原作者,从源码中学到了很多。

这里我就直接上代码了。(注:因为数据结构问题我将源码中的json数据结构title改为id,value改为name。勾选树的获取值未变:data.value

    //创建tree
    var xtree = new layuiXtree({
        elem: xTree‘ //放xtree的容器(必填)
         , form: form              //layui form对象 (必填)
         , data: json              //数据,结构请参照下面 (必填)
         , isopen: true            //初次加载时全部展开,默认true (选填)
         , checked: true
         , ischecked:  deptIds //初次加载勾选的数据。格式(a,b,c)
         , single:   single//是否为单选 ,默认为false(多选)
         , ckall: false    //启用全选功能,默认值:false
         , color: "#039adf "           //图标颜色 (选填)
         , icon: {                 //图标样式 (选填)
             open: ""      //节点打开的图标
             , close: ""   //节点关闭的图标
             , end: "&#xe621"     //末尾节点的图标
         }
        , click: function (data) {  //节点选中状态改变事件监听,全选框有自己的监听事件
               //console.log(data.elem.leaf);//是否为叶子节点
            //console.log(data.elem); //得到checkbox原始DOM对象
            //console.log(data.elem.checked); //开关是否开启,true或者false
            //console.log(data.value); //开关value值,也可以通过data.elem.value得到
            //console.log(data.othis); //得到美化后的DOM对象
        }
    });
ischecked:初次加载勾选的数据。格式(a,b,c)。场景用于一些修改信息反勾选的;


single:true单选、false多选。(注:因场景要求我把父子关联渲染注释掉了)


另外在项目过程中,有一处需要CheckBox框与title分开,做成两个点击事件。我暂时屏蔽了。如果需要就改一下,然后在from,里面用jQuery获取span标签。记住一点要在from里面,不然没效果。改动的js文件地址:链接:https://pan.baidu.com/s/1iHYIEKeI3eVkFa6O8BCMwg 密码:g31r。

效果图就不上了,其实就是想给大家分享下,自己做个笔记,额,哈哈。。。再次谢谢原作者!

原文地址:https://www.cnblogs.com/YangshengQuan/p/8663126.html

时间: 2024-10-06 21:15:44

依赖layui form模块 复选框tree插件(拓展可根据属性单选还是多选,数据反选)的相关文章

jquery checkbox 复选框多次点击判断选中状态,以及全选/取消的代码示例

2015年12月21日 10:52:51 星期一 目标, 点击当前的checbox, 判断点击后当前checkbox是否是选中状态. html: <input type="checkbox" onclick="contracts_checkall()" id="contracts_checkall"> 全选 js: 1 var checkall = $("#contracts_checkall").attr('ch

nodetree中 前面复选框禁用插件

nodetree中 前面复选框的去掉插件 extendTreeCheck.js 1 /** 2 * tree方法扩展 3 * 作者:小雪转中雪 4 */ 5 $.extend($.fn.tree.methods, { 6 /** 7 * 激活复选框 8 * @param {Object} jq 9 * @param {Object} target 10 */ 11 enableCheck : function(jq, target) { 12 return jq.each(function(){

C#ListView控件添加Checkbox复选框并获取选中的数目,检查checkbox是否勾选

原地址:http://blog.csdn.net/lucky51222/article/details/41892429 1.添加复选框:listView1.CheckBoxes = true; 2.选中listview并获取选中的数目: [csharp] view plain copy private void listView1_ItemChecked(object sender, ItemCheckedEventArgs e) { e.Item.Selected = e.Item.Chec

项目实战之FORM、复选框组件的实现

一.使用描述 对于复选框组件来说,主要的问题在于,勾选后返回的值要处理为数字,传递给接口,接口返回的值也是数字,但是在前台做回显时在table中数据格式需要转义为文字或者在form中数据格式需要回显在复选框中. 二.功能代码 1,转为数字1为勾选,0为未勾选 constructor(props) { super(props); this.state = { checkStatus: 0 } } //选中是true值转为1,否则就是0 handleIsChecked = (e) => { this

关于textjs的tree带复选框的树

通过查阅一些资料和自己之前了解到的一些相关知识,有时项目中需要用到.话不多说,先看一下效果图: 我写的这人员选择的树,主要是改写了TreePanel,如下代码: ExtendTreePanel.js (该文件中可以写一些触发事件) Ext.namespace('Ext.ysq');//Ext.namespace方法定义一个管理类的包,类似Java中定义的包名,目的是建立自己的一个对象名,方便管理,防止重复 Ext.ysq.ExtendTreePanel = Ext.extend(Ext.tree

Selenium-测试对象操作之:复选框checkbox

复选框操作包括:选中.取消选中.全选 案例: Python+Selenium代码 # -*- coding: utf-8 -*-from selenium import webdriverimport osimport time file_path = os.path.abspath('checkbox.html')print file_pathdriver = webdriver.Chrome()driver.get(file_path)#选中一个复选框driver.find_element_

JavaScript全部勾选所有复选框

本例主要说明如何使用JavaScript实现全选功能.效果图如下 点击"全选"前 点击"全选"后 代码如下: <html> <head> <title>全部勾选所有复选框</title> <metahttp-equiv="Content-Type" content="text/html;charset=UTF-8"/> <scripttype="tex

avalonjs 复选框

1>复选卡框 监控已选框的数组,即通过属性监控来判断是否全选 <div ms-controller="test"> <ul> <li>{{isAllChecked}}全选 <input type="checkbox" ms-attr-checked="isAllChecked" ms-click="checkAll" /> </li> <li ms-rep

关于MUI v0.18.0版本 Table组件里的复选框不能选的解决方案

前段时间在用MUI的时候,Table组件出现复选框不能选的bug(描述: 点击复选框,点击事件会触发,复选框勾选状态无变化). 解决方法: 用CheckBox组件代替Table组件自带的复选框. 解决思路: 1.将CheckBox分为两种,一种是表头里的全选框(以下称全选框),一种是列表行里普通的复选框(以下称普通框): 2.将普通框进行单独封装(原因: 1.便于单个普通框自己管理自己的勾选状态,2.当全选框的勾选状态发生变化时,可以通过props将全选框的状态赋给它,从而实现全选的功能): 关