jQuery MiniUI

标题: treegrid可不可以根据节点位置定位滚动条位置? [打印本页]

作者: fiona_mao    时间: 2014-4-17 10:52:18     标题: treegrid可不可以根据节点位置定位滚动条位置?

求大神赐教

作者: fiona_mao    时间: 2014-4-17 10:54:05

请问大神可不可以用treegrid.scrollIntoView ( node );
作者: felt    时间: 2014-4-17 11:16:11

fiona_mao 发表于 2014-4-17 10:54
请问大神可不可以用treegrid.scrollIntoView ( node );

可以的,3.3treegrid是从datagrid派生的,可以使用datagrid的API
作者: fiona_mao    时间: 2014-4-17 11:50:57

用scrollIntoView方法有什么前提条件或有什么限制吗?
作者: felt    时间: 2014-4-17 12:03:13

fiona_mao 发表于 2014-4-17 11:50
用scrollIntoView方法有什么前提条件或有什么限制吗?

把你的代码贴一下
作者: fiona_mao    时间: 2014-4-17 13:48:03

<div id="treegrid1" class="mini-treegrid" style="height:100%" url="${ctx}/busDictionary/getAll.do" resultAsTree="false"  showTreeIcon="true"
                                treeColumn="value" idField="id" parentField="busDdictionaryParentId" allowResize="true" expandOnLoad="true" multiSelect="true"
                                showCheckBox="true" checkRecursive="true"  allowSelect="true" virtualScroll="true"
                                allowCellEdit="true" allowCellSelect="true">
                                <div property="columns">
                                        <div type="indexcolumn">编号</div>
                                        <div name="value" field="busDictionaryValue">字典值
                                                <input property="editor" class="mini-textbox" style="width:100%"/>
                                        </div>
                                        <div field="busDictionaryKey">字典键
                                                <input property="editor" class="mini-textbox" style="width:100%"/>
                                        </div>
                                </div>
                        </div>       


function search(){
                        //获取模糊查询的值
                        var key=mini.get("key").value;
                        //保存相匹配的值
                        var searchNodes=new Array();
                        //获取treegrid的根节点
                        var rootNode=treegrid.getRootNode();
                        //获取treegrid所有的子节点
                        var nodes=treegrid.getAllChildNodes(rootNode);
                        //循环遍历子节点,查询相匹配的节点
                        for(var i=0;i<nodes.length;i++){
                                if(nodes[i].busDictionaryValue.indexOf(key)!=-1){
                                        searchNodes.push(nodes[i]);
                                        //将所有匹配节点选中
                                        treegrid.select(nodes[i]);
                                }
                        }
                        //将滚动条定位到一个匹配节点
                        treegrid.scrollIntoView(searchNodes[0]);
                }
作者: fiona_mao    时间: 2014-4-17 14:11:27

版主啊!按照上面的代码为什么滚动条不能定位到选中的节点呢?
作者: felt    时间: 2014-4-17 14:34:01

fiona_mao 发表于 2014-4-17 14:11
版主啊!按照上面的代码为什么滚动条不能定位到选中的节点呢?

加下延时试试。。。那么大的循环
setTimeout(function(){
      treegrid.scrollIntoView(searchNodes[0]);
},10000)                    




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