grid

grid

  BlogJava :: 首页 :: 联系 :: 聚合  :: 管理
  78 Posts :: 0 Stories :: 62 Comments :: 0 Trackbacks

#

节点拖拽投放
                              

参考示例节点拖拽投放

        

创建代码          

<ul id="tree1" class="mini-tree" url="../data/tree.txt" style="width:200px;padding:5px;" 
    showTreeIcon="true" textField="text" idField="id" 
    allowDrag="true" allowDrop="true">
</ul>
  • allowDrag:允许拖拽节点               
  • allowDrop:允许投放节点

  •            
posted @ 2012-12-06 16:31 nikofan 阅读(1997) | 评论 (1)编辑 收藏

多选树:CheckBoxTree
                                 

参考示例多选树:CheckBoxTree

                     

创建代码           

<ul id="tree2" class="mini-tree" url="../data/tree.txt" style="width:300px;" 
    showTreeIcon="true" textField="text" idField="id" showCheckBox="true"
    onbeforenodecheck="onBeforeNodeCheck" checkRecursive="true" allowSelect="false" enableHotTrack="false">        
</ul>                       
  • showCheckBox:显示树形的checkbox
  •                
  • checkRecursive:决定是否联动选择
  •                     

设置多选

tree.setValue("forms,button,lists");
        

获取多选

var value = tree.getValue();
alert(value);
posted @ 2012-12-05 16:24 nikofan 阅读(4280) | 评论 (1)编辑 收藏

树操作:增加、删除、修改、移动
                    

参考示例增加、删除、修改节点


                       

增加节点          

var tree = mini.get("tree1");
var node = tree.getSelectedNode();
var newNode = {};
tree.addNode(newNode, "before", node);
          

删除节点   

var node = tree.getSelectedNode();
tree.removeNode(node);
          

编辑节点    

var node = tree.getSelectedNode();            
tree.beginEdit(node);  
          

移动节点   

tree.moveNode(node, targetNode, "before");
posted @ 2012-12-04 15:31 nikofan 阅读(6780) | 评论 (6)编辑 收藏

懒加载树
                     

参考示例懒加载树


                      

创建代码                    

<ul id="tree1" class="mini-tree" url="../data/TreeService.aspx?method=LoadNodes" style="width:300px;height:200px;padding:5px;" 
    showTreeIcon="true" textField="name" idField="id" onbeforeload="onBeforeTreeLoad" 
        >        
</ul>
      
           

服务端返回数据

[{
    id: "form",
    text: "Form",
    ......
    isLeaf: false,                            //是否叶子节点:+和-号
    expanded: false                            //节点处于收缩状态
},
......
]
其中,isLeft 说明此节点是否有下一级节点。expanded 表示此节点处于折叠状态。           
           

懒加载事件          

当用户点击"+"图标时,会自动加载下一级节点,此时会把当前节点id传递到后台,也可以拦截加载事件,增加额外属性:

function onBeforeTreeLoad(e) {
    var tree = e.sender;    //树控件
    var node = e.node;      //当前节点
    var params = e.params;  //参数对象

    //可以传递自定义的属性
    params.myField = "123"; //后台:request对象获取"myField"
}

           

服务端处理        

服务端通过request获取"id"属性后,加载此节点的下一级节点数组,并通过JSON返回。

String id = Request["id"];
if (String.IsNullOrEmpty(id)) id = "-1";

//获取下一级节点
String sql = "select * from plus_file where pid = '" + id + "' order by updatedate";
ArrayList folders = DBUtil.Select(sql);

//判断节点,是否有子节点。如果有,则处理isLeaf和expanded。
for (int i = 0, l = folders.Count; i < l; i++)
{
    Hashtable node = (Hashtable)folders[i];
    String nodeId = node["id"].ToString();

    String sql2 = "select * from plus_file where pid = '" + nodeId + "' order by updatedate";
    ArrayList nodes = DBUtil.Select(sql2);

    if (nodes.Count > 0)
    {
        node["isLeaf"] = false;
        node["expanded"] = false;
    }

}

//返回JSON
String json = PluSoft.Utils.JSON.Encode(folders);
Response.Write(json);
posted @ 2012-12-03 16:14 nikofan 阅读(2525) | 评论 (0)编辑 收藏

创建树:Html生成             
参考示例创建树:Html生成
            
         

Html标签创建节点  

<ul id="tree2" class="mini-tree" style="width:200px;padding:5px;" showTreeIcon="true">
    <li>
        <span>MiniUI</span>
        <ul>
            <li>
                <span expanded="false">Form</span>
                <ul>                           
                    <li>ComboBox</li>
                    <li>DatePicker</li>
                    <li>Spinner</li>
                    <li>TreeSelect</li>
                </ul>
            </li>
            <li>
                <span expanded="false">Lists</span>
                <ul>
                    <li><a href="../datagrid/datagrid.html" target="_blank" style="color:Blue;text-decoration:underline;">DataGrid</a></li>
                    <li>Tree</li>
                </ul>
            </li>    
            <li>
                <span expanded="false">Layouts</span>
                <ul>
                    <li>Panel</li>
                    <li>Splitter</li>
                    <li>Layout</li>
                </ul>
            </li>         
            <li>
                <span expanded="false">Navigations</span>
                <ul>
                    <li>Tabs</li>
                    <li>NavBar</li>
                    <li>Menu</li>
                    <li>Pager</li>                            
                </ul>
            </li>             
        </ul>
    </li>                       
</ul>
            
posted @ 2012-11-30 16:02 nikofan 阅读(1612) | 评论 (0)编辑 收藏

创建树:本地JSON
                        

参考示例创建树:本地JSON


           

创建Tree          

没有设置url。

<ul id="tree3" class="mini-tree" style="width:300px;padding:5px;" 
    showTreeIcon="true" textField="text" idField="id" >        
</ul>
          
                   

Javascript设置数据

var tree3 = mini.get("tree3");
tree3.loadData([
    { id: "lists", text: "Lists", expanded: false,
        children: [
            { id: "datagrid", text: "DataGrid" },
            { id: "tree", text: "Tree" },
            { id: "treegrid", text: "TreeGrid " }
        ]
            },
    { id: "layouts", text: "Layouts", expanded: false,
        children: [
            { id: "panel", text: "Panel" },
            { id: "splitter", text: "Splitter" },
            { id: "layout", text: "Layout " }
        ]
    },
    { id: "navigations", text: "Navigations", expanded: false,
        children: [
            { id: "pager", text: "Pager" },
            { id: "tabs", text: "Tabs" },
            { id: "navbar", text: "NavBar" },
            { id: "menu", text: "Menu" }
        ]
    }
]);
posted @ 2012-11-29 16:18 nikofan 阅读(1859) | 评论 (1)编辑 收藏

创建树:列表结构
                
                               

参考示例: 列表数据生成Tree


                       

创建Tree           

<ul id="tree1" class="mini-tree" url="../data/listTree.txt" style="width:200px;padding:5px;" 
    showTreeIcon="true" textField="text" idField="id" parentField="pid" resultAsTree="false"  
    >
</ul>          

注意:idField、parentField、resultAsTree属性。


       
           

数据结构:列表          

通过url返回的数据结构如下:

[
    {id: "base", text: "Base", expanded: false},    
    {id: "ajax", text: "Ajax", pid: "base"},
    {id: "json", text: "JSON", pid: "base"},
    ......
]
其中,id和pid对应父子关系。
posted @ 2012-11-28 16:00 nikofan 阅读(1348) | 评论 (0)编辑 收藏

创建树:树形结构
                
                               

参考示例Tree 树形控件


                      

创建Tree           

<ul id="tree1" class="mini-tree" url="../data/tree.txt" style="width:300px;padding:5px;" 
    showTreeIcon="true" textField="text" idField="id" >        
</ul>
       
           

数据结构:树形          

通过url返回的数据结构如下:

[
    {id: "base", text: "Base", expanded: false,
        children: [
            {id: "ajax", text: "Ajax"},
            {id: "json", text: "JSON"},
            {id: "date", text: "Date"},
            {id: "control", text: "Control"},
            {id: "messagebox", text: "MessageBox"},
            {id: "window", text: "Window"}
        ]
    },
    ...
]
posted @ 2012-11-27 16:00 nikofan 阅读(1589) | 评论 (0)编辑 收藏

DataBinding:数据绑定
                
           

参考示例DataBinding:数据绑定


                      

数据绑定         

数据绑定后:当表格变化时,控件值跟随变动;控件值修改时,表格单元格内容变动。
                最后使用表格的数据提交保存,达到:多次修改、一次保存的效果。

//绑定表单
var db = new mini.DataBinding();
db.bindForm("editForm1", grid);

//绑定控件
db.bindField(textbox, grid, "username");
           
posted @ 2012-11-26 15:48 nikofan 阅读(1361) | 评论 (0)编辑 收藏

表格:合并单元格
                
            
                     

参考示例合并单元格


                       
           

调用方法:margeCells。如下代码:

grid.on("load", onLoad);
function onLoad(e) {
    var grid = e.sender;

    var marges = [
        { rowIndex: 1, columnIndex: 0, rowSpan: 1, colSpan: 2 },
        { rowIndex: 3, columnIndex: 0, rowSpan: 4, colSpan: 3 }
    ];

    grid.margeCells(marges);
}
posted @ 2012-11-23 15:53 nikofan 阅读(1911) | 评论 (0)编辑 收藏

仅列出标题
共8页: 上一页 1 2 3 4 5 6 7 8 下一页