extjs TreePanel 如何根据搜索条件来加载树形??

问题大概这样,这个树形一开始加载都正常,我是想在树形的框上面的tbar里加上搜索框,点击搜索后,根据条件来加载内容,getRootNode().reload貌似不对,要如... 问题大概这样,这个树形一开始加载都正常,我是想在树形的框上面的tbar里加上搜索框,点击搜索后,根据条件来加载内容,getRootNode().reload貌似不对,要如何让树形根据搜索条件重新加载呢?
我目前这样做的

{
xtype:'button'
text:"搜索"
,icon: "ui/images/icons/search.gif"
,handler:function(){appTree.getRootNode().reload({'start':'dsfds地方', 'limit':'aaa啊啊22'}); }
}
树形大概这样:下面的dataUrl后面带的数据就能传到后台
var appTree = new Ext.tree.TreePanel({
..........
dataUrl: 'main.php?m=PolicyManage&c=sysPolicySet&a=getAppCodeNodesPolicy&policy_id='+policy_id+'&policy_type='+policy_type,
..........
});
在dataUrl下面加上
baseParams:{start:'aaaaaa'+aaa},

这样的话start后面写成固定值,后台就能获取到,写成sfpp.form.findField('kw1').getValue()就获取不到,郁闷啊,sfpp.form.findField('kw1').getValue()在appTree外面确实是可以获取值得;放在这里面就不行了,我的extjsload ,reload都支持
展开
 我来答
匿名用户
2013-07-18
展开全部
//页面左边的导航菜单树
var leftPanel = new Ext.tree.TreePanel({
    region : 'west',
    split : true,
    containerScroll : true,
    autoScroll : true,
    animate : true,
    rootVisible : false,
    collapsible : true,
    title : '功能菜单',
    loader : new Ext.tree.TreeLoader(),
    height : 500,
    width : 200
});

var root = new Ext.tree.AsyncTreeNode({
    text : '菜单',
    id : '0'
});

leftPanel.setRootNode(root);
leftPanel.on('beforeload', function(node) {
    leftPanel.loader.dataUrl =loadMenuUrl+'&pid='+ node.id; // 定义子节点的Loader

});
更多追问追答
追问
可是如何传搜索框的值进去呢???????
追答
node.id不就是 想后台传的值么
页面打开之后,先加载出了一级菜单,然后通过leftPanel.on这个监听,把点击的一级菜单。
然后会把id传想后台,然后找出 2级菜单的值,思路是这样地。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式