ztree高手进(关于java)!!!在线等!!

ztree高手进(关于java)!!!在线等!!,第1张

呵呵,最简单的办法,其实就是拼写字符串,你怎么拼出来 jsp页面的html内容的?? 那么只需要按照 json格式拼出全部字符串即可。

可以参考 异步加载 Demo 中得到的数据(请利用 chrome 的调试工具进行跟踪调试)

如果对象比较复杂,那么可以在谷歌上搜索一下:“java json 输出” 会有很多教程和 lib 推荐

var treeSourceURL = appGetRootDept+userID;

var settingSourceTree = {

async:{

enable:true,

url:treeSourceURL,

type:"get",

dataFilter:filter_asyncSourceTree

},

写成url:tresSourceURL,这样做是因为初始的时候的url要根据userID来拼接。这样获得一级部门没有问题,但问题在于获取2级部门的时候,url发生了改变,我需要动态的修改url,

我在beforeAsync里面使用

var t = $fnzTreegetZTreeObj("treeSource");

var nodes = tgetSelectedNodes();

deptID = nodes[0]id;

alert(deptID);

treeSourceURL = appGetChild+deptID+userCid+userID;

settingSourceTreeasyncurl=treeSourceURL;

alert("2"+settingSourceTreeasyncurl);

到目前为止,都很顺利,alert出来settingSourceTreeasyncurl已经改变我想要的url,

但当真正的进行ajax的时候,通过调试器发现请求的url仍然是一级部门请求的url,并没有改变成

我在beforeAsync里修改的url;

这是为什么呢? 是否是因为我不应该在beforeAsync里面修改?

于是我在onClick回调函数里采用

function onClick_SourceTree(event,treeId,treeNode,clickFlag){

var t = $fnzTreegetZTreeObj("treeSource");

var nodes = tgetSelectedNodes();

deptID = nodes[0]id;

//alert(deptID);

treeSourceURL = appGetChild+deptID+userCid+userID;

settingSourceTreeasyncurl=treeSourceURL;

//alert("1 "+settingSourceTreeasyncurl);

}

结果与在beforeAsync里修改一样,settingSourceTreeasyncurl的值是被修改了,但是

在ajax的时候,url仍然是初始化的时候的url。

没有仔细的阅读api,使用getAscynURL已经解决了该问题

如果想在前台更换,那么直接让你的 settingasyncurl = function() { return url} 这样就行了, 每次异步加载时,你都可以根据 父节点的 id 确定 后台获取地址的 url;

如果你是每次根据不同的情况更换 树上的全部节点,那么只要是 树初始化之后,每次只需要修改 zTreeObjsettingasyncurl 的值,然后执行 reAsyncChildNodes 方法让根节点重新加载也可以。。总之,条条大路通罗马,选择最适合自己的就是了

这里主要用到的是autoParam属性,

这个属性的默认值是[],其实可以在后台直接得到节点id

例如java后台可以直接用

String

id

=

requestgetParameter("id");

当然你也可以像下面这样指定传输id

var

setting

=

{

async:

{

enable:

true,

url:

"getNodedo",

autoParam:

["id"]

}

};

另外这个id属性你可以自定义,如

var

setting

=

{

async:

{

enable:

true,

url:

"getNodedo",

autoParam:

["id=zId"]

}

};

后台用

String

id

=

requestgetParameter("zId");就好了

autoParam作用是:

异步加载时需要自动提交父节点属性的参数。[settingasyncenable = true 时生效]

默认值:[ ]

[ "id", "name" ]就是会把父节点里的id,name属性也提交过去。

如果解决了您的问题请采纳!

如果未解决请继续追问!

以上就是关于ztree高手进(关于java)!!!在线等!!全部的内容,包括:ztree高手进(关于java)!!!在线等!!、为什么不能够在ztree中动态修改async的url、zTree如何更换url地址等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/9630427.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存