zTree异步加载后执行node[nameKey]时报undefined,兄弟们帮帮忙,急
ztree吧
全部回复
仅看楼主
level 1
215723396 楼主
2012年03月07日 02点03分 1
level 11
看看你返回的 节点数据 JSON 格式是否满足要求,如果你后台封装的 json 被多嵌套了一层,请利用 dataFilter 功能进行处理,将有效的数据返回即可。
2012年03月07日 05点03分 2
level 1
215723396 楼主
谢谢已经解决了!!
2012年03月07日 06点03分 3
level 1
你好,你的问题是怎么解决的啊,我第一次做这个zTree啊,也遇到同样的问题啊,zTree异步加载后执行node[nameKey]时报undefined。能详细告知解决方案么,多谢!!
2012年03月23日 09点03分 4
level 1
多谢
2012年03月23日 09点03分 5
level 11
请确认你返回的数据是否有 name 属性,如果不是用name 属性,请利用 setting.data.key.name 去设置
2012年03月24日 05点03分 6
level 1
你好,
我按照v3.1/demo/cn/exedit/edit_super.html 的例子,移到我的项目中,只是把var zNodes 对象改用ajax获取到的json来赋值, 我遇到的问题是,zTree动态加载后执行node[nameKey]时报undefined,我的配置是:
data: {
key: {
name: "groupName"
},
simpleData: {
enable: true,
idKey: "id",
pIdKey: "parentGroupId",
rootPId: 0
}
},
callback: {
beforeDrag: beforeDrag,
beforeEditName: beforeEditName,
beforeRemove: beforeRemove,
beforeRename: beforeRename,
onRemove: onRemove,
onRename: onRename
}
};
我返回的json对象格式如下:
[{"createTime":{"date":23,"day":5,"hours":13,"minutes":25,"month":2,"nanos":0,"seconds":29,"time":
13324803290
00,"timezoneOffset":-480,"year":112},"groupName":"AAAA","groupPhoneSum":0,"id":1,"parentGroupId":0,"remark":"","userId":1}
,{"createTime":{"date":23,"day":5,"hours":13,"minutes":25,"month":2,"nanos":0,"seconds":29,"time":
13324803290
00,"timezoneOffset":-480,"year":112},"groupName":"BBB","groupPhoneSum":0,"id":2,"parentGroupId":0,"remark":"","userId":1}
,{"createTime":{"date":23,"day":5,"hours":13,"minutes":25,"month":2,"nanos":0,"seconds":29,"time":
13324803290
00,"timezoneOffset":-480,"year":112},"groupName":"CCC","groupPhoneSum":0,"id":3,"parentGroupId":0,"remark":"","userId":1}
,{"createTime":{"date":23,"day":5,"hours":13,"minutes":25,"month":2,"nanos":0,"seconds":29,"time":
13324803290
00,"timezoneOffset":-480,"year":112},"groupName":"DDDD","groupPhoneSum":0,"id":4,"parentGroupId":0,"remark":"","userId":1}
]
树的展现没有问题,可是我修改节点名或新增删除时,就报undefined:log如下
[ 10:31:42 613 beforeEditName ] undefined
[ 10:31:45 950 beforeRename ] undefined
[ 10:31:45 950 onRename ] undefined
恳请指教啊,非常感谢!
2012年03月26日 03点03分 7
level 11
使用了你的 zNodes 和 data的设置,edit_super 页面能够正常工作,针对你的问题,建议如下:
1、删除时不应该报错
2、beforeEditName 为何报错?不太明白,你写了些什么?
3、修改、增加节点时,也请制作 groupName 属性,就不要再使用 name 属性了!!切忌!!
2012年03月26日 05点03分 8
level 1
上午在等待你回复的同时 我吧json 中 groupName 属性名修改成原始的name ,动态新增,修改,删除,基本正常了,
下午按你的方式修改也Ok,非常感谢。
另外还请教个问题,如果在页面动态新增节点的时候,想自定义节点名,输入完新节点的用户名,才动态保存到数据库,有api调用么?还是要把addNode和rename结合使用么?
2012年03月26日 09点03分 9
level 11
看你的需求是如何了。
方案一,利用 ztree 默认的编辑模式
利用 目前 addNode 和 onRename 结合
方案二:利用自定义的添加节点界面
在用户确认节点名称并提交后,可以利用ajax 保存到数据库,当返回成功标识后,再利addNodes 方法添加节点。
2012年03月26日 10点03分 10
level 1
首先感谢你的及时回复,我目前是参照exedit/edit_super.html 来实现动态新增编辑名称和删除的,就是新增是不能先定义节点名,如果用你说得第二种方案的话,是不是就不能使用exedit/edit_super.html这个方式了,只能是有个输入框,先输入要新增的节点名字,再点击按钮提交来调用ajax,以及addNodes 方法添加节点。是这样的么,
还有,如果我想在这个“高级增删改”页,再加一个按钮跟在删除按钮后面,需要怎么实现啊,
多谢,盼复
2012年03月30日 08点03分 11
level 5
能帮我解答上一篇帖子吗?比较急?
2012年03月30日 09点03分 12
level 5
能帮我解决上一个帖子吗? 求救!!点击编辑按钮后,添加和删除就失效。
2012年03月30日 09点03分 13
level 11
能否再对照一下 zTree 的Demo呢?
2012年03月30日 13点03分 14
level 1
提问题之前,我是忽略了 removeHoverDom ,导致添加按钮出错,后来又查了查api,发现有如下一段话:“请务必与 setting.view.removeHoverDom 同时使用;” 然后我 利用 setting.view.addHoverDom / removeHoverDom / 新增按钮可以了,
多谢,
2012年03月31日 01点03分 15
level 5
怎么弄呢 我返回的json为
[{id:"0",pId:"-1",name:"商品总类"},{id:"2",pId:"0",name:"手机"},{id:"3",pId:"2",name:"iPhone 4S"},{id:"4",pId:"2",name:"谷歌 G1"},{id:"5",pId:"0",name:"电脑"},{id:"6",pId:"5",name:"宏基 4743G"},{id:"7",pId:"5",name:"联想 邵阳 E41"},{id:"8",pId:"7",name:"联想 邵阳 E41G 升级版"}]
为什么还提示报错呢???大哥帮帮忙!!!!
2012年03月31日 08点03分 16
level 5
就是node[nameKey]报错。。。。
2012年03月31日 08点03分 17
level 5
解决了,原来是数据格式的问题。。。忘了把值改为json了。。。。
但为什么有时候页面首次加载的时候数据显示不出来呢?除非再刷新?
2012年03月31日 09点03分 18
level 11
检查异步加载的流程是否正确!看看 我在 iteye 上 发表的文章“这些年我们爱犯的弱智错误(菜鸟必看)”中后几个关于异步加载的说明。
2012年03月31日 10点03分 19
level 5
对了高手,我用的mvc3,我感觉异步加载是失效的,有办法吗???
2012年03月31日 10点03分 20
1 2 尾页