当前位置: 代码迷 >> Web前端 >> JqueryUI tree默许点击第一个节点
  详细解决方案

JqueryUI tree默许点击第一个节点

热度:741   发布时间:2012-06-28 15:20:03.0
JqueryUI tree默认点击第一个节点

?

?

?提供一个JqueryUI api网站供学习。地址:http://www.jeasyui.com/


1、html中设置<ul id="unitlist" animate="true"></ul>显示tree。

2、在加载js时候先注册tree。

?

$(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()是异步执行的,放在声明变量后面不起作用。于是代码改成:

?

$(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")方法即可得到。

?

  相关解决方案