ztrre 获取树的所有数据转换成json和之前读取的json不一样了

koftt21 2015-06-19 11:01:28
就是一个tree,这个zTree tree的数据是从后台传来的(json格式),现在我对这个tree新增、删除了节点后需要把这个tree修改后的json传回到后台保存
var treeObj = $.fn.zTree.getZTreeObj("treeDemo");
var nodes = treeObj.getNodes(); 获取树的所有节点
var simpleNodes = treeObj.transformToArray(nodes);//转换为Array格式[{},{}...]
var json=JSON.stringify(simpleNodes); //转换为json
但是这个json和之前读取进来的json不一样了 重新读取这个 就不显示 。 据说是zTree给他们增加了很多属性 ,怎么去掉呢.
...全文
275 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
香蕉猪 2015-06-19
  • 打赏
  • 举报
回复
怎么不一样了?能打印出来看看吗???把多余的循环用空剃掉不就行了吗。。。
香蕉猪 2015-06-19
  • 打赏
  • 举报
回复
引用 7 楼 liuchao150 的回复:
引用 6 楼 gy127132060 的回复:
伟大的版主又出现了。。。楼主自己尝试用js来实现nodes的格式修改吧。。。。别用transformToArray
我的每隔问题几乎 都被版主解决
将来没事可以多私信版主,,,联络感情。。。。
koftt21 2015-06-19
  • 打赏
  • 举报
回复
引用 6 楼 gy127132060 的回复:
伟大的版主又出现了。。。楼主自己尝试用js来实现nodes的格式修改吧。。。。别用transformToArray
我的每隔问题几乎 都被版主解决
引用 5 楼 showbo 的回复:
不用treeObj.transformToArray,这样会多出很多节点出来,而且每个节点有子节点会有children,会有很多重复数据,你自己遍历下nodes,去掉不需要的属性就行 参考:获取ztree增加删除节点后的数据
多谢了 我试下
香蕉猪 2015-06-19
  • 打赏
  • 举报
回复
伟大的版主又出现了。。。楼主自己尝试用js来实现nodes的格式修改吧。。。。别用transformToArray
Go 旅城通票 2015-06-19
  • 打赏
  • 举报
回复
不用treeObj.transformToArray,这样会多出很多节点出来,而且每个节点有子节点会有children,会有很多重复数据,你自己遍历下nodes,去掉不需要的属性就行 参考:获取ztree增加删除节点后的数据
koftt21 2015-06-19
  • 打赏
  • 举报
回复
引用 3 楼 gy127132060 的回复:
你这生成的json本身就有问题啊。。。。是不是进行了什么循环导致错乱了??
没有哪里有循环 用的jquery ztree插件 在贴下代码 点击按钮触发的事件的方法
		function submit(){
		var treeObj = $.fn.zTree.getZTreeObj("treeDemo");  //拿到zTree 对象
		var nodes = treeObj.getNodes(); //拿到zTree 节点
		var simpleNodes = treeObj.transformToArray(nodes);//转换为简单Array格式[{},{}...]
		var json=JSON.stringify(simpleNodes); //把Array格式转换为json //这里转换出来就是我发图片的那个了
			$.ajax({   
				  type: 'POST',
				  url: "xml",
				 // data: data,
				  data: {jsondata:json},
				  success: function(date){
				  	alert(date);
				  }
				  //dataType: dataType
			});	
		}
难道我这种获取树的所有数据 或者转换为json的地方错了 我也是在网上找的这个方法 还有什么办法可以拿到树的所有节点 转换为json么 求解..
香蕉猪 2015-06-19
  • 打赏
  • 举报
回复
你这生成的json本身就有问题啊。。。。是不是进行了什么循环导致错乱了??
koftt21 2015-06-19
  • 打赏
  • 举报
回复
引用 1 楼 gy127132060 的回复:
怎么不一样了?能打印出来看看吗???把多余的循环用空剃掉不就行了吗。。。
原来读取的是这个显示了树
{"name":"DR","value":"","id":"2","open":false,"icon":null,"children":[{"name":"1","value":"","id":"3","open":false,"icon":null,"children":[{"name":"1.1","value":"","id":"4","open":false,"icon":null,"children":[{"name":"1.1.1","value":"","id":"5","open":false,"icon":null,"children":[{"name":"检查所见","value":"1.1.1.1内容","id":"6","open":false,"icon":null,"children":null,"target":"","pId":null,"url":null,"title":null},{"name":"诊断意见","value":"1.1.1.2内容","id":"7","open":false,"icon":null,"children":null,"target":"","pId":null,"url":null,"title":null}],"target":"","pId":null,"url":null,"title":null}],"target":"","pId":null,"url":null,"title":null}],"target":"","pId":null,"url":null,"title":null},{"name":"2","value":"","id":"8","open":false,"icon":null,"children":[{"name":"2.1","value":"","id":"9","open":false,"icon":null,"children":[{"name":"2.1.1","value":"","id":"10","open":false,"icon":null,"children":[{"name":"检查所见","value":"2.1.1.1内容","id":"11","open":false,"icon":null,"children":null,"target":"","pId":null,"url":null,"title":null},{"name":"诊断意见","value":"2.1.1.2内容","id":"12","open":false,"icon":null,"children":null,"target":"","pId":null,"url":null,"title":null}],"target":"","pId":null,"url":null,"title":null}],"target":"","pId":null,"url":null,"title":null}],"target":"","pId":null,"url":null,"title":null}],"target":"","pId":null,"url":null,"title":null}
var json=JSON.stringify(simpleNodes); //转换为json后就是这样了 数据太多字符不可以输入这么多 图片展示 多了很多东西。 用这个在去显示树 就不显示了

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧