微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

zTree3.5使用ajax请求返回json数据时遇到的问题

因项目需求,用到了zTree 3.5。数据是从数据库里直接取到,按照zTree3.5的数据要求,我在后台用 StringBuffer 拼接了一个json格式的数据,然后在前端用ajax()方法获得这个json,赋值给zNodes这个变量,从而显示一个树。

后台获得所有数据后用StringBuffer拼接了个json数据,在控制台打印输出了下,查看符合json数据格式。前端用ajax获得这个json数据,alert下,没有问题。按照zTree的要求配置好所有数据,检查后zTree配置没有问题,页面却没有显示树形数据。我alert下ajax的数据长度length与后台数据长度,发现长度不一样。但是将后台打印输出的json数据直接粘贴赋值给zNodes后, 页面能正常显示树状数据。几番纠结后才终于找到问题所在:

我拼接的json数据虽说符合json格式,但前端无法识别,必须用eval()执行后返回的才是json对象:var json对象=eval("(" + data + ")");注意这里两边的括号不可以去掉,因为在JS中每个方法都可以作为一个类来生成对象,这里就是用简易的方式来生成json对象。随后我alert数据的长度,发现和后台拼接的json数据长度一致,页面也能正常显示树状数据。

总算解决了,在这里分享下,希望能对用到的朋友些许帮助。不到之处还请指正。

原文地址:https://www.jb51.cc/ajax/164985.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐