ExtJS4 TreePanel extraParams传参

本文介绍了ExtJS 4中TreePanel在构建动态树时如何设置extraParams来传递参数给后台,以便获取子节点数据。动态树通常需要通过根节点的ID向服务器请求子目录信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ExtJS 4 构建一个视图模式比较固定,这里说说TreePanel 参数问题,除了静态的树,动态树一般都会涉及到根节点传回后台,获取子目录。

1.创建model

//   model
	 Ext.define('Testtree',{
		 extend:'Ext.data.Model',
		 fields:[
			 {name:'id',type:'string'},
			 {name:'text',type:'string'},
			 {name:'isLeaf',type:'boolean'},
			 {name:'path',type:'path'}
	    ]
	 });
	 


2.创建store
//	 store
	 Ext.define('TreeStore',{
	 	extend:'Ext.data.TreeStore',
	 	model:'Testtree',
		autoLoad: false,
	    folderSort: true,
		proxy : {
			type:'ajax',
			actionMethods: 'post',
			url:'./xxx/xxx.action',
			reader: {
				type: "json",
				root: 'data'
			},
			extraParams:{
				root:''
			}
		},
		sorters: [{
			property: 'text',
			direction: 'ASC'
		}]
	 	
	 });


3.创建panel
	 //Treepanl 片段
	 
		xtype:'treepanel',
		id:'testTree',
		name:'itest',
		title: '请选择',
		width: 600,
		height: 80,
		scroll :'vertical',
		rootVisible :false,
		store:testStroe,
		rootVisible: false,
		listeners: {
		//树列表单击,取值赋值给id:xxxx的文本框
			itemclick: function(view,record,item,index,e,eOpts) {            
				var str = record.data.path;
				var fieldChange = Ext.getCmp('xxxx');
				fieldChange.setRawValue(str);
			},
		//点击目录树+前 给root参数赋值
			beforeitemexpand:function(record,eOpts){
				var tp = Ext.getCmp('testTree');
				var root = tp.getStore().getProxy();
				root.extraParams.root = record.data.path;
			}
		}


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值