树形结构json格式赋值,传值
来源:互联网 发布:吕鑫讲的c语言咋样 编辑:程序博客网 时间:2024/06/09 22:07
在做树形结构把在数据库中查到的数据,存在的打上对勾,首先导入
<!--ztree --><link href="${ctxStatic}/jquery-ztree/3.5.12/css/zTreeStyle/metro.css" rel="stylesheet" type="text/css"/><script src="${ctxStatic}/jquery-ztree/3.5.12/js/jquery.ztree.all-3.5.min.js" type="text/javascript"></script>
这两个插件,再使用getjson请求后台数据
var data = rel.data; var setting = { check: {enable: true, nocheckInherit: true}, view: {selectedMulti: false}, data: {simpleData: {enable: true}}, callback: { beforeClick: function (id, node) { tree.checkNode(node, !node.checked, true, true); return false; } } }; var zNodes =${list}; // 初始化树结构 var tree = $.fn.zTree.init($("#menuTree1"), setting, zNodes);
将以上作为全局变量,因为在后面要用到,再从新选择后提交后台接收值得情况。
var url = "${ctx}/meetingIn/usertype/?type=1&meetingId=${meeting.id}";$.getJSON(url, function (rel) { // 不选择父节点 tree.setting.check.chkboxType = {"Y": "ps", "N": "s"}; // 默认选择节点 var ids = data.split(","); for (var i = 0; i < ids.length; i++) { var node = tree.getNodeByParam("id", ids[i]); try { tree.checkNode(node, true, false); } catch (e) { } } // 默认展开全部节点 tree.expandAll(true);});function checkUser(){ $("#users1").val(""); var ids1 = [], nodes = tree.getCheckedNodes(true); for (var i = 0; i < nodes.length; i++) {//这里判断将父节点为空的排除掉 if(nodes[i].pId!=""){ ids1.push(nodes[i].id); } } alert($("#users1").val(ids1)); $("#users1").val(ids1); if($("#users1").val()==""){ return false; }else { return true; }}这里在提交表单时进行传值,要判断为空的状态,还要每次选择的时候的将之前的数据清空<input type="hidden" name="usersid" id="users1"/>将选中的值放入上面文本框。在这里有两点非常重要,一个是zNodes,zNodes是一个json格式,在这里要给正确的json格式,因为在前端不好展示,所以在后端利用map,将要的数据变成json格式<div id="menuTree1" class="ztree" style="margin-top:3px;float:left;"></div>
一个是data.split(","),将显示的树形结构放到div中。
下面是后端的ajax请求和返回的json格式
@RequiresPermissions(value={"meetingIn:meetingIn:view"},logical=Logical.OR)@RequestMapping(value = "usertype")@ResponseBodypublic String usertype(MeetingIn meetingIn) { Gson gson = new Gson(); try{ List<MeetingIn> list=meetingInService.findUserIdList(meetingIn); String str=""; for(MeetingIn meeting:list){ str+=meeting.getUserId()+","; } JsonResult jsonResult = new JsonResult(1,str); return gson.toJson(jsonResult); }catch(Exception ex){ JsonResult jsonResult = new JsonResult(0,ex.getMessage()); return gson.toJson(jsonResult); }}将返回的集合对象,将它的ID利用字符串拼接,返回一个字符串,在前端解析出var data = rel.data; var ids = data.split(",");
List<HashMap> hashMapList = new ArrayList<HashMap>();List<Office> officeList=officeService.getListOffice();for (Office office:officeList){ HashMap hashMap = new HashMap(); hashMap.put("id",office.getId()); hashMap.put("pId",0); hashMap.put("name",office.getOfficename()); hashMapList.add(hashMap); for(User u :officeService.getListUser(office.getId())){ HashMap hashMap1 = new HashMap(); hashMap1.put("id",u.getId()); hashMap1.put("pId",office.getId()); hashMap1.put("name",u.getName()); hashMapList.add(hashMap1); }}Gson gson = new Gson();model.addAttribute("list",gson.toJson(hashMapList));上面这段代码非常的重要,就是利用了这个特点将数据转换成了标准的json格式。其中 pId是必须要的,它代表了节点,父节点为0,它的子节点要跟它的id相同。
阅读全文
0 0
- 树形结构json格式赋值,传值
- asp.net 树形结构赋值
- 树形结构JSON的实现方法(也叫做JSON嵌套格式)
- json的初始化赋值格式
- 构建Json树形目录结构
- 树形结构的json数据源,
- 【笔试题】一种树形结构--递归赋值(。。。)
- Extjs树形嵌套json格式的拼接
- Java递归算法构造JSON树形结构
- EasyUITree实现树形结构Json串
- java 树形结构转换为json字符串
- 将一条一条的json转成树形结构
- 将一条一条的json转成树形结构
- JS无级树树形菜单,json格式,数组格式通用
- jsTree +asp.net树形结构,取值、赋值、全选
- 将给定格式的线性结构转换为树形结构
- ASP返回JQuery EasyUI树形要求的JSON格式
- ANDROID 中 树形结构JSON 的 遍历提取信息
- 利用Excel和bat批处理命令 批量创建文件夹
- 最大流
- 非root用户登录docker
- 匹配指定id的HTMLDom元素的正则
- 独木舟上的旅行-OJ
- 树形结构json格式赋值,传值
- 插入排序和二分插入排序
- JavaScript实现动态表格的创建
- solr6.6的介绍与使用
- L2-006. 树的遍历
- Ngrok之Screenの简单使用-yellowcong
- Android常见的设计模式
- ZOJ 2879 Capture the Flag (模拟题)
- C++ 易混淆点(二)