异步加载中url传的值为什么无法接收到呢,纳闷了
ztree吧
全部回复
仅看楼主
level 1
b334985497 楼主
先上代码
var setting = {
async: {
enable: true,
autoParam: ["nodeId=operationright.mId"],
url : '/system/showModule.shtml'
},
callback: {//回调函数,在这里可做一些回调处理
onAsyncSuccess: zTreeOnAsyncSuccessModule
},
//获取数据时节点Id和父id对应json的属性名,rootPId 为根节点的id
data: {
simpleData: {
enable : true,
idKey : "nodeId",
pIdKey : "nodePid",
rootPId: 0
},
//显示节点名称时对应的json数据里面的属性
key: {
name: "nodeName",
url:"nodeAddress"
}
},
//不显示图标
view: {
showIcon: false,
selectedMulti: false
}
};
按照API里面的说法 传参数的形式应该是:我在action里面设置了一个具有get和set方法的对象operationright 按照nodeId=operationright.mId传递参数的方法(mId是该对象的一个具有get和set方法的属性) zTree会自动把点击节点的nodeId 也就是idKey 传到action后台当中,可是怎么都无法获取,这里我设置的是动态url在json中是用nodeAddress放的地址,地址和树的显示都是没有问题的,就是参数无法传递到后台,很纳闷呢...如果单独写个onclick方法用ajax来传递的话,很明显点击节点的时候onclick里面定义的ajax会执行跳转一次url后台会接收到值,但是接着zTree又会跳转一次我设置的动态url,后台接收到的就是空值了,有没大侠指点下,不胜感谢![哈哈]
2013年03月07日 10点03分 1
level 1
b334985497 楼主
好吧 不纠结了 .... 我想了个方法 点击节点的时候将该节点数据通过form的形式提交了
2013年03月08日 01点03分 2
第一次加载的时候autoParam 和 otherParam怎么设置?我是冲数据库中查询的
2013年08月28日 06点08分
level 11
这个问题其实你用 chrome F12 调试一下就知道问题出在哪儿了.
我在 async.html 的Demo 中 用上了你的 autoParam 的内容, 利用监控完全没有问题,
setting 中的信息:autoParam:["id", "name=n", "level=operationright.mId"],
用 chrome 跟踪 ajax 提交的参数:
id:01
n:n1
operationright.mId:0
otherParam:zTreeAsyncTest
所以我觉得你的问题更多的有可能是后台如何获取 “operationright.mId” 这个值的问题吧?
2013年03月08日 02点03分 3
level 1
b334985497 楼主
可能是我解释错了...这个参数的传递是要传递到treeNode的url上 也就是说:如果点击节点的url="/system/xxx.shtml" 我想这样传递参数"/system/xxx.shtml?operationright.mId="+treeNode.nodeId 不是setting中设置的url,我在尝试着对后台传过来的treenode的url进行重写如("/system/xxx.shtml?operationright.mId="+treeNode.nodeId )不知道可行不 我先试试吧
2013年03月08日 02点03分 4
试了下 这样做还是存在部分问题, 不知道zTree中节点的url的设置是如何的 是树加载好了就固定了吗 节点的url能带参数不
2013年03月08日 02点03分
level 11
如果你一定要修改ajax 的url 那么直接利用 给 url 指定为 function 即可,每次ajax 调用时,都会触发这个 function,你就可以返回动态的url 地址了,看看 API 的说明
2013年03月08日 02点03分 5
补充一下,如果一定要用 url 上面带参数,其实设置 ajax 的方式从post 修改为 get 也是完全可行的; zTree 默认是post 的,这个看看 API 文档吧
2013年03月08日 02点03分
回复 zTreeAPI :其实问题是在这的,我是用的进入页面一次全部加载完数据的方式进行加载的,所以当进行点击操作的时候传递的Url在async中是无效的,难道key: { name: "nodeName", url:getUrl } key里面的url设置也能设置为function吗?
2013年03月08日 03点03分
回复 zTreeAPI :是节点的url呢 我没解释清楚 嘿嘿 , 没事 我想了个办法解决了
2013年03月08日 12点03分
1