周末对ext布局进行了研究,发现以前觉得比较麻烦的东西,现在看来十分简单。ext的使用不是特别困难,但是如何才可以保证ext可以满足各种变态的页面需求的同时又可以使开发人员不去接触一堆一堆的js呢?这个问题肯定是个难题。
还是贴点代码。下面的代码实现了利用table模式布局FormPanel。解决了在非form模式下label不能显示的问题,但是还是存在问题,例如通常情况下“开始日期”和“结束日期”一般只占一个column,也就是两个元素各占半个column。
function getBodyWidth(){
return document.body.clientWidth-15;
}
function func_submit_onclick(){
alert('hello');
}
var _bodyWidth = getBodyWidth();
var _columns = 3 * 2;
var _perWidth = _bodyWidth/_columns;
Ext.onReady(function(){
Ext.QuickTips.init();
var tableForm=new Ext.FormPanel({
name:'tableForm',
id:'tableForm',
frame:true,
layout:'table',
style:'height:100%',
layoutConfig: {columns:_columns},
title:'TableForm',
defaults:{border:false,layout:'form',frame:false,labelAlign:'right',labelWidth:75,width:_perWidth*2,height:30}
});
tableForm.add({colspan:2,items:{xtype:'textfield',fieldLabel:'First Name',anchor:'100%'}});
tableForm.add({colspan:2,items:{xtype:'textfield',fieldLabel:'First Name',anchor:'100%'}});
tableForm.add({colspan:2,items:{xtype:'textfield',fieldLabel:'First Name',anchor:'100%'}});
tableForm.add({colspan:1,width:_perWidth,items:{xtype:'datefield',fieldLabel:'First Name',anchor:'100%'}});
tableForm.add({colspan:1,width:_perWidth,labelAlign:'center',items:{xtype:'datefield',fieldLabel:'to',anchor:'100%'}});
tableForm.add({colspan:2,items:{xtype:'textfield',fieldLabel:'First Name',anchor:'100%'}});
tableForm.add({colspan:2,items:{xtype:'textfield',fieldLabel:'First Name',anchor:'100%'}});
tableForm.add({colspan:4,width:_perWidth*4,items:{xtype:'textfield',fieldLabel:'First Name',anchor:'100%'}});
tableForm.addButton({text:'submit',handler:func_submit_onclick});
tableForm.addButton({text:'cancel'});
tableForm.render(Ext.getBody());
});
分享到:
相关推荐
本文将深入探讨“Ext table布局实例”以及“formpanel的table布局”,帮助开发者更好地理解和运用这两种布局方式。 首先,我们要理解什么是Ext table布局。Ext table布局主要用于显示数据,它基于HTML的`<table>`...
特别是在IE9和Firefox下,可能需要深入`ext-all.css`找到特定组件的样式,如`.x-btn-text-icon .x-btn-icon-small-left .x-btn-text`,并设置相应的`font-size`。例如: ``` .x-btn-text-icon .x-btn-icon-small-...
2. **布局管理**:讲解EXT2.0中的各种布局模式,如Fit布局、Table布局、Border布局等,以及如何根据需求选择合适的布局。 3. **数据存储与模型**:包括Store、Model和Proxy,它们是EXT数据层的核心,用于与服务器...
首先,Ext.FormPanel是ExtJS中用于创建表单的主要组件,它允许我们构建复杂的表单布局并处理用户输入的数据。 1. **Checkbox简单示例** Checkbox在ExtJS中用于创建复选框,可以用来让用户选择多个选项。在示例中,...
4. **布局管理**:EXT 有多种布局方式,如Fit布局、Table布局、Form布局等,可以灵活调整组件在容器中的排列方式。 5. **拖放功能**:EXT 支持拖放操作,使得用户可以通过简单的手势进行数据移动或操作。 6. **...
2. **布局管理**:EXT 3.0.0提供了多种布局方式,如Fit布局、Border布局、Form布局、Table布局等,可以自动调整组件的大小和位置,适应不同屏幕尺寸和数据变化。 3. **数据绑定**:EXT的数据模型和数据视图机制允许...
EXTJS 3.1.1提供多种布局模式,如Fit布局、Border布局、Form布局、Table布局等,这些布局用于控制组件在容器中的排列方式,使得开发者可以灵活地组织界面元素。 3. **数据绑定**: 数据绑定是EXTJS的一个强大特性...
4. **布局管理**:EXT 3.0提供了多种布局方式,如Fit、Table、Border、Column等,以适应不同的界面需求。布局管理器会根据容器的大小自动调整子组件的位置和大小。 5. **事件处理**:EXT的事件模型允许开发者监听和...
在布局管理方面,Ext Js 2.02支持多种布局模式,如Fit布局、Border布局、Table布局等,这使得组件可以适应不同的屏幕尺寸和分辨率。开发者可以通过配置布局属性,轻松实现页面元素的自动排列和调整大小。 表单处理...
布局管理器负责调整和定位组件,常见的布局类型有“fit”(适合)、“border”(边框)、“form”(表单)和“table”(表格)。例如,`border`布局可以将组件分布在容器的各个边界,而`fit`布局则会将组件大小调整...
4. **布局管理**:EXT 2.0的布局管理器能够自动调整组件的大小和位置,有Fit、Border、Column、Table等多种布局方式,适应不同场景的需求。 5. **事件系统**:EXT 2.0采用发布/订阅模式的事件系统,使得组件间的...
- Ext 3.0 引入了多种布局模式,如Fit布局、Border布局、Table布局等,方便地管理组件的排列和尺寸。 6. **表单组件** - 表单组件包括文本框、选择框、日期选择器等,支持验证和数据提交。 - FormPanel可以容纳...
此外,还可以使用`Ext.form.FormPanel`来创建更复杂的表单。 **示例代码**: ```javascript Ext.onReady(function () { formlayout(); }); function formlayout() { new Ext.Panel({ renderTo: Ext.getBody(), ...
同时,手册还会讲解EXT的布局系统,如Fit布局、Form布局和Table布局,以及如何使用Store和Model进行数据管理。 3. **Ext Core手册**:Ext Core是ExtJS的轻量级版本,保留了核心的组件和布局功能。对于那些只需要...
ExtJS拥有多种布局方式,如Fit布局、Border布局、Table布局等,可以根据不同需求灵活地调整组件的排列和大小。布局管理器自动处理组件间的空间分配,使开发者能轻松创建响应式和适应性界面。 4. **事件驱动**: ...
此外,类图可能还会包含EXTJS的布局管理器,如Fit布局、Form布局和Table布局,这些布局决定了组件在容器中的排列和调整大小的方式。 在EXTJS教程中,类图是一个不可忽视的部分。通过阅读和分析类图,开发者可以更...
2. **布局管理**:ExtJS提供多种布局模式,如Fit布局、Border布局、Table布局等,用于调整组件在容器中的排列和尺寸。 3. **数据绑定**:ExtJS的数据绑定功能允许组件与数据源进行双向同步,使得数据的更新能实时...
ExtJS的表单使用FormPanel容器 表单使用的布局方式:form和formtable布局 ExtJS的表单和html的form标签是相似的,新建一个FormPanel实际上就是新建一个html的form标签,只是添加许多Ext的样式而已