?
?
?提供一个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")方法即可得到。
?