zTree的使用,向后台传值和获取值选中

zTree的使用,向后台传值和获取值选中

2023年6月22日发(作者:)

zTree的使⽤,向后台传值和获取值选中

⾸先引⼊zTree的css和jshtml:

    js配置:获取数据:var node=""; $.ajax({ url: "/it/orderManage/getLevelPackageTrain", dataType: "json", async: false, data: { "T_PACKAGE_CODE": $("#T_PACKAGE_CODE").val(), }, type: "POST", success: function (ret) { node=ify(ret); }, error: function () { } });返回的数据形式:要有⾃⼰的id和其⽗id,名字配置ztree简单⽰例:funcSetting= { async:{ enable:true, url:"${ctx}/serviceOrder/getServiceUserList", otherParam:{//传⼊查询参数 //注意,要传⼊动态变化的参数必须⽤return的⽅式 "regionGroupId":function(){return $("#regionGroupId").val() } }, }, view: { dblClickExpand: false,//禁⽌双击展开 showLine: true,

    selectedMulti: false }, data: { key:{ name:"NAME"//显⽰的名字 }, simpleData: { enable:true, idKey: "ID", //id pIdKey: "PID" //⽗id } }, check:{ enable:true, //chkboxType:{ "Y": "ps", "N": "s" } chkStyle: "radio", //选择框,可以是check或者radio radioType:"all" //all为全部树状中选择,level为⾃⼰⼀个根节点中选择 }, callback: {//回调函数 onClick:function(event, treeId, treeNode){//点击每个节点回调

    }, onAsyncSuccess:function(event, treeId, treeNode, msg) {//树结构加载完后回调

    } }};funcTreeObj = $.($("#funcTree"), funcSetting, null); //初始化ztree补充:⾥⾯⽤到的api和配置看这个⼿册,⾮常全⾯1.查询传⼊参数⽤ otherParam,并⽤return返回2.刷新树结构时:cChildNodes(null, "refresh");这种⽅法可以让ztree重新发送请求并刷新树结构3.实现单击展开⼦节点⽅法(onClick回调⽅法中实现)onClick:function(event, treeId, treeNode){ Node(treeNode)//单击节点展开其⼦节点 if(==1){ //点击⼦节点后记录其参数值 $("#userId").val() }},4. 树加载完展开某节点onAsyncSuccess:function(event, treeId, treeNode, msg) { // All(true);//展开所有节点 //默认打开顶级(第⼀级)节点 var treeObj = $.eeObj(treeId); var nodes = es(); if (>0) { for(var i=0;i<;i++){ Node(nodes[i], true, false, false);//默认展开第⼀级节点 } }}5.实现只显⽰有⼦节点的根节点onAsyncSuccess:function(event, treeId, treeNode, msg) { var nodes = es();//默认只能得到根节点 var ll=; //因为循环过程会删除节点导致节点数量变化,所以使⽤双循环⽅法 for (var i=0;i

    } }; funcTreeObj = $.($("#funcTree"), funcSetting, null); //初始化ztreejs提交时向后台传选中项的值:var checkedObjs = ckedNodes(true); //获取所有选中的节点 if(!=11){ ("必须选择10个产品"); flag=false; return; } $("#form1 input[name='TID']").remove(); for(var i=0;i<;i++) { var obj = checkedObjs[i];//将选中的值放到input中传到后台 if() { $("#form1").append(""); //在form⾥增加input,将字符串数组传到后台 } }

    后台java接收:

    //保存升级包 @RequestMapping(value = "/saveLevelPackage", method = , produces = "text/html;charset=utf-8") @ResponseBody public String saveLevelPackage(@RequestParam HashMap param, @RequestParam(value = "file") MultipartFile[] files, HttpServletRequest request, String T_PACKAGE_CODE, HttpServletRequest req) { String result; String[] TIDs = ameterValues("TID"); //在request中⽤字符串数据接收 try{ if(T_PACKAGE_CODE!=null&&!T_PACKAGE_("")){ LevelPackageTrain(param); LevelPackage(param); }else{ velPackage(param); } if(TIDs!=null){ for(int i=0;i<;i++){ if(TIDs[i].equals("1")){ continue; } ("TID",TIDs[i]); elPackageTrain(param); //循环保存 } } } catch (Exception e) { tackTrace(); } result = "完成"; return String(result); }java取值时://获取升级包等级价格 @RequestMapping(value = "/getTrainList1", method = , produces = "text/html;charset=utf-8") @ResponseBody public String getTrainList1(@RequestParam HashMap param) { RetBase ret = new RetBase(); List> list = new ArrayList<>(); try { list = inList1(param); Map parent = new HashMap<>(); ("TITLE", "系统产品"); //因为关系中没有⽗类,⼿动加⼀个⽗类 ("PID", "0"); ("TID", "1"); (parent); cess(true); a(list); } catch (Exception e) { cess(false); } return String(list); //直接将结果集⽤字符串输出 }

    发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1687383592a5991.html

    相关推荐

    发表回复

    评论列表(0条)

    • 暂无评论

    联系我们

    400-800-8888

    在线咨询: QQ交谈

    邮件:admin@example.com

    工作时间:周一至周五,9:30-18:30,节假日休息

    关注微信