当前tree节点属性改成选中,怎么不对呢,谁知道啊,俩小时了,看不出来错

 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励20(财富值+成长值)
山水阿锐
推荐于2016-08-06 · TA获得超过34.3万个赞
知道顶级答主
回答量:23.7万
采纳率:91%
帮助的人:3.3亿
展开全部
您好,
1、html中设置<ul id="unitlist" animate="true"></ul>显示tree。
2、在加载js时候先注册tree。

Js代码
$(function(){
var addr_tree = $("#unitlist").tree({
url:'',
method:"post",
onSelect:function(node){}
});
})
3、通过查看jqueryUI api,没有发现一个有效的能使tree选中第一个节点的方法。

4、然后查看jqueryUI生成的html源文件,发现只要选中一个节点,就会在class中添加tree-node-selected属性。于是通过源文件根据id="unitlist"往下查找第一个节点的div,手动给他添加class="tree-node-selected";

5、此时,就可以通过getSelected方法获取Node对象,同时就可以获取选中行的相关信息了。但是发现$("#unitlist").tree()是异步执行的,放在声明变量后面不起作用。于是代码改成:

Js代码
$(function(){
var addr_tree = $("#unitlist").tree({
url:'',
method:"post",
onSelect:function(node){},
onLoadSuccess:function(node,data){
$("#unitlist li:eq(0)").find("div").addClass("tree-node-selected"); //设置第一个节点高亮
var n = $("#unitlist").tree("getSelected");
if(n!=null){
$("#unitlist").tree("select",n.target); //相当于默认点击了一下第一个节点,执行onSelect方法
}
}
});
})
PS:服务端需要提供的json数据格式可参考http://www.jeasyui.com/documentation/tree.php

------------------------------------------------------------------------------------------------------------------------------------------------------------

再说一下DateBox插件,怎么获取它的值呢?

发现API中没有提供这个方法,试了一下$("#a").datebox("getValue")方法即可得到。
追问
最后一句,改成$("tree").tree("check",node.target);    成功了,不过还是谢谢你了。。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式