我刚刚学习Ext,想知道如果我定义了一个控件,这个控件能在不同的panel中使用么

我现在定义了3个panel,定义的控件只能在最后定义的那个panel中显示,前面的两个panel都无法显示出来。控件时这么定义的sDate=newExt.form.Tex... 我现在定义了3个panel,定义的控件只能在最后定义的那个panel中显示,前面的两个panel都无法显示出来。
控件时这么定义的 sDate=new Ext.form.TextField({
fieldLabel:'开始时间',
hideLabel:true,
name:'sDate',
id:'sDate',
allowBlank:false,
readonly:'false',
width:185
value:date.format('Y-m-d H:i:s')
})
sDate.on("afterrender",function(){regDateControl(sDate.getId());});
定义完之后在panel中使用hisSelectpart=new Ext.Panel({
title:'选择条件',
id:'hisSelectpart',
frame:'true',
layout:'form',
items:[{xtype:"label",text:'开始时间'},sDate]
})
在第二个panel中也这么调用,并且将第二个panel放入到不同的window中,在第一个窗体中显示,在第二个窗体中这些控件就显示不了了。。
展开
 我来答
昏月橘光
2011-01-31 · 超过19用户采纳过TA的回答
知道答主
回答量:38
采纳率:0%
帮助的人:50.1万
展开全部
同一个控件只能渲染到一个控件里
既然sDate要出现在多个地方,不妨这样写:
第一种方法:
var sDate=function(){
sDate=new Ext.form.TextField({
fieldLabel:'开始时间',
hideLabel:true,
name:'sDate',
id:'sDate',
allowBlank:false,
readonly:'false',
width:185
value:date.format('Y-m-d H:i:s')
})
sDate.on("afterrender",function(){regDateControl(sDate.getId());});
return sDate;
};

...
items:[{xtype:"label",text:'开始时间'},new sDate()]
...

第二种方法:
items:[{xtype:"label",text:'开始时间'},{
xtype:'textfield',
fieldLabel:'开始时间',
hideLabel:true,
name:'sDate',
id:'sDate',
allowBlank:false,
readonly:'false',
width:185
value:date.format('Y-m-d H:i:s'),
listeners:{
afterrender:function(){
regDateControl(sDate.getId());
}
}
}]
百度网友e7886d4
2011-01-28 · TA获得超过1502个赞
知道小有建树答主
回答量:1195
采纳率:0%
帮助的人:284万
展开全部
后台是无法获取Ext控件的,因为Ext是通过javascript在前台画出来的控件,后台根本不知道这个控件的存在。
建议楼主把逻辑都卸载javascript中,然后需要获取数据的地方通过ajax动态获取数据,然后拿到客户端来操作,我们之前实现的一个树和表格的拖拽都是通过Ext作的,涉及到交互的地方就是通过Ajax实现的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
俊慕若窗绅d
2011-01-28 · 超过30用户采纳过TA的回答
知道答主
回答量:52
采纳率:0%
帮助的人:71.6万
展开全部
定义了一个控件不能同时渲染到两个地方啊,
你把放 sDate 的地方替换成 { xtype:'datefield',hideLabel:true,id:'sDate1',format:'Y-m-d H:i:s',value:new Date(),anchor:'95%'} 这样在使用的时候定义 也不是很麻烦
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Austin82
2011-01-30 · TA获得超过107个赞
知道小有建树答主
回答量:197
采纳率:0%
帮助的人:135万
展开全部
最好贴出全代码。

提示:注意EXT.WINDOW默认在关闭时会注销所有它的组件,包括全局的。
来自:求助得到的回答
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式