jQuery MiniUI

标题: 给一个lazytree后台处理的方法 [打印本页]

作者: xie77    时间: 2014-1-9 09:50:57     标题: 给一个lazytree后台处理的方法

如题,在学怎么用lazytree的用法,看了官网的例子,请求的后台的方法看不出是什么(http://www.miniui.com/demo/data/TreeService.aspx?method=LoadNodes),麻烦能给一下吗?
不用能url="lazytree.txt"传吧,变成树,不是lazy树了

作者: felt    时间: 2014-1-9 10:00:20

可以下载我们的试用包,可以看后台方法的
作者: xie77    时间: 2014-1-9 10:07:20

felt 发表于 2014-1-9 10:00
可以下载我们的试用包,可以看后台方法的

好的,谢谢,已经看到方法了,有什么不懂的地方我再咨询一下
作者: xie77    时间: 2014-1-9 16:56:02

felt 发表于 2014-1-9 10:00
可以下载我们的试用包,可以看后台方法的

在创建了一个懒加载树后,设置可以拖动节点,同事说,将节点移动到新的父节点后,再次展开,无法刷新以前父节点以前的子节点?(是不是移动后,父节点被默认为已经加载过了),可否测试一下
作者: factory    时间: 2014-1-9 17:00:08

xie77 发表于 2014-1-9 16:56
在创建了一个懒加载树后,设置可以拖动节点,同事说,将节点移动到新的父节点后,再次展开,无法刷新以前 ...

懒加载,父节点第一次展开都会去加载数据的,你移动到该节点,展开会去加载数据.刷新节点
作者: xie77    时间: 2014-1-9 17:12:02

factory 发表于 2014-1-9 17:00
懒加载,父节点第一次展开都会去加载数据的,你移动到该节点,展开会去加载数据.刷新节点 ...

移动的时候是不需要展开目标父节点的,移动成功后,再展开父节点,还会在加载吗?还是就只有移动的节点?
作者: xie77    时间: 2014-1-9 17:18:18

factory 发表于 2014-1-9 17:00
懒加载,父节点第一次展开都会去加载数据的,你移动到该节点,展开会去加载数据.刷新节点 ...

我用官网的懒加载树示例添加了allowDrag="true" allowDrop="true"属性后,在未打开父节点的情况下,向其里面添加了子节点后,点击父节点,只出现添加的子节点,没有其他节点了
作者: felt    时间: 2014-1-9 17:34:42

xie77 发表于 2014-1-9 17:18
我用官网的懒加载树示例添加了allowDrag="true" allowDrop="true"属性后,在未打开父节点的情况下,向其 ...

懒加载的时候节点第一次打开的时候才会加载子节点
你直接添加后节点下面有子节点了,默认是已加载过了,所以再打开就不会再去加载
所以请加载完节点再进行添加操作
作者: xie77    时间: 2014-1-10 09:58:54

felt 发表于 2014-1-9 17:34
懒加载的时候节点第一次打开的时候才会加载子节点
你直接添加后节点下面有子节点了,默认是已加载过了, ...

我用了givefeedback事件,可以实现在投放前先加载一次父节点,但是体验效果很不好,因为targetNode不是我最终确认的投放节点,
我想实现的效果是我拖拽确认投放点,先加载父节点,在投放
作者: felt    时间: 2014-1-10 10:16:51

xie77 发表于 2014-1-10 09:58
我用了givefeedback事件,可以实现在投放前先加载一次父节点,但是体验效果很不好,因为targetNode不是我 ...

再绑个beforedrop,不是你需要投放的节点的用e.cancel=true阻止掉看看
作者: xie77    时间: 2014-1-10 10:36:38

felt 发表于 2014-1-10 10:16
再绑个beforedrop,不是你需要投放的节点的用e.cancel=true阻止掉看看

e.cancel 是取消投放节点,还是会加载非目标父节点
作者: felt    时间: 2014-1-10 10:48:27

xie77 发表于 2014-1-10 10:36
e.cancel 是取消投放节点,还是会加载非目标父节点

你不加载父节点,怎么出现你要投放的节点,你不是要投放到这个父节点下的子节点吗?
作者: xie77    时间: 2014-1-10 11:30:23

felt 发表于 2014-1-10 10:48
你不加载父节点,怎么出现你要投放的节点,你不是要投放到这个父节点下的子节点吗? ...

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>LazyTree 懒加载树形</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" /><link href="../demo.css" rel="stylesheet" type="text/css" />

   
    <script src="../../scripts/boot.js" type="text/javascript"></script>
   
   

</head>
<body>
    <h1>LazyTree 懒加载树形</h1>      
   
    <input type="button" value="刷新节点" onclick="refreshNode()"/>
<ul id="tree1" class="mini-tree" url="../data/TreeService.aspx?method=LoadNodes" style="width:300px;height:200px;padding:5px;"
    showTreeIcon="true" textField="name" allowDrag="true" allowDrop="true"  
    idField="id" parentField="pid" resultAsTree="false"
        >        
</ul>

   
    <script type="text/javascript">
    mini.parse();
   var lazytree = mini.get("tree1");
      lazytree.on("givefeedback", function(e) {
           lazytree.loadNode (e.targetNode );
      });

   
    </script>

    <div class="description">
        <h3>Description</h3>
        <p>
        </p>
    </div>
</body>
</html>


这个是我在官方示例上做的, 拖拽节点,只要鼠标经过就会展开节点,而不是我按下鼠标投放时展开节点
作者: felt    时间: 2014-1-10 11:41:54

xie77 发表于 2014-1-10 11:30
LazyTree 懒加载树形
   

lazytree.on("beforedrop", function(e) {
           lazytree.loadNode (e.dropNode );
           e.cancel=true;
});
用beforedrop事件吧




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2