- 浏览: 467634 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
njliukang:
请问一下,如果是异步树,应该怎么解决?貌似用expandpat ...
ExtJS Tree刷新后自动展开并选择节点 -
xiaoyueyue5721:
这是ScriptDataSet,如果换成OdaDataSet呢 ...
Birt动态填充DataSet数据 -
leexiaodong2009:
我准备要用那个锁定。
ExtJS 3.0 优秀扩展简介 (持续更新) -
babyhhcsy:
pizza823 写道分享下另外中方法store里面不用变在列 ...
ExtJS EditorGridPanel中时间日期编辑问题的总结 -
冷月宫主:
高手,请问一下有没有使用Ext做过多表头锁定左侧指定列的处理? ...
仅供纪念,曾做过的一些界面截图
老是被反复问到这个问题,烦了...总结下...
1.首先要确保你store中的field是成功的把时间字符串转换为date类型
2.正确的设置grid的renderer以便呈现
3.正确的设置editor的format
4.关于格式化的方式,看ext api中Date的那篇,很详细.
截图如下:
代码如下:
Ext.onReady(function(){ Ext.BLANK_IMAGE_URL = '/js/extjs/3.0/resources/images/default/s.gif'; //Ext.chart.Chart.CHART_URL = '/js/extjs/3.0/resources/charts.swf'; Ext.QuickTips.init(); testEditorGrid(); }); function testEditorGrid(){ var store = new Ext.data.SimpleStore({ fields:[ //先把json中的时间格式化为date格式 {name:'time1',type:'date',dateFormat:'Y-m-d H:i:s'},//对应于2009-10-20 10:00:00 {name:'time2',type:'date',dateFormat:'Y-m-d'},//对应于2009-10-20 {name:'time3',type:'date',dateFormat:'y-m-d'},//对应于09-10-20 {name:'time4',type:'date',dateFormat:'m/d/y'},//对应于10/20/09 {name:'time5',type:'date',convert:function(v,r){return new Date(r.time5);}} //对应于1293901323000 ], data:[ ['2009-10-20 10:00:00','2009-10-20','09-10-20','10/20/09',1293901323000] ], listeners:{ 'load':function(store,records,options){ //出了问题的时候,先检查json格式是否正确转换为date var r = store.getAt(0); var validDate = Ext.isDate(r.get('time1')) && Ext.isDate(r.get('time2')) && Ext.isDate(r.get('time3')) && Ext.isDate(r.get('time4')); Ext.Msg.alert('提示','1.在Store里面格式化'+(validDate?'正确!':'错误!')); } } }); var grid = new Ext.grid.EditorGridPanel({ width: 400, height: 200, renderTo:Ext.getBody(), sm:new Ext.grid.RowSelectionModel({}), viewConfig:{forceFit:true}, store:store, columns: [{ header: '时间1', dataIndex: 'time1', //显示在grid上的格式,这里格式化为2009-10-20的格式 renderer:Ext.util.Format.dateRenderer('Y-m-d'), editor:new Ext.form.DateField({ //在编辑器里面显示的格式,这里为09-10-20的格式 format: 'y-m-d' }) },{ header: '时间2', dataIndex: 'time2', //显示在grid上的格式,这里格式化为09/10/20的格式 renderer:Ext.util.Format.dateRenderer('y/m/d'), editor:new Ext.form.DateField({ //在编辑器里面显示的格式,这里为10/20/09的格式 format: 'm/d/y' }) },{ header: '时间3', dataIndex: 'time3', //显示在grid上的格式,这里格式化为09-10-20 00:00:00的格式 renderer:Ext.util.Format.dateRenderer('y-m-d H:i:s'), editor:new Ext.form.DateField({ //在编辑器里面显示的格式,这里为2009-10-20的格式 format: 'Y-m-d' }) },{ header: '时间4', dataIndex: 'time4', //显示在grid上的格式,这里格式化为09年10月20日的格式 renderer:Ext.util.Format.dateRenderer('y年m月d日'), editor:new Ext.form.DateField({ //在编辑器里面显示的格式,这里为09.10.20的格式 format: 'y.m.d' }) }] }) }
评论
9 楼
babyhhcsy
2013-11-22
pizza823 写道
分享下另外中方法
store里面不用变
在列模型里面
renderer:formatDate
store里面不用变
在列模型里面
renderer:formatDate
// 格式化日期 function formatDate(value) { if (Ext.isEmpty(value)) {//判断是否是日期类型的数据 return ''; } else { if (Ext.isDate(value)) return Ext.util.Format.date(value, 'Y-m-d');// 用于时间控件返回值 else return Ext.util.Format.date(new Date(value), 'Y-m-d');// 转换为Date类型 } }
这个方法可以使用,如果return Ext.util.Format.date(new Date(value), 'Y-m-d');不可以使用的话,可以直接使用return value
8 楼
sprite311
2012-09-07
太感谢了 弄了半天没弄好 用了你的方法就好了 [size=x-large][/size]
7 楼
pizza823
2010-07-16
分享下另外中方法
store里面不用变
在列模型里面
renderer:formatDate
store里面不用变
在列模型里面
renderer:formatDate
// 格式化日期 function formatDate(value) { if (Ext.isEmpty(value)) {//判断是否是日期类型的数据 return ''; } else { if (Ext.isDate(value)) return Ext.util.Format.date(value, 'Y-m-d');// 用于时间控件返回值 else return Ext.util.Format.date(new Date(value), 'Y-m-d');// 转换为Date类型 } }
6 楼
pizza823
2010-07-16
atian25 写道
TO pizza823: 用
TO whaosoft: 用altFormats属性
{ name:'validTime', type:'date', convert:function(v,r){ return new Date(r.validTime); } },
TO whaosoft: 用altFormats属性
thanks a lot
5 楼
atian25
2010-07-15
TO pizza823: 用
TO whaosoft: 用altFormats属性
{ name:'validTime', type:'date', convert:function(v,r){ return new Date(r.validTime); } },
TO whaosoft: 用altFormats属性
4 楼
pizza823
2010-07-15
冲第一条
1.首先要确保你store中的field是成功的把时间字符串转换为date类型
服务器返回的数据如下
"roleLimits":"11111111111111111111111111111111"},"recId":1,"idx":null,"shopId":7,"loginName":"admin","passwd":"21232f297a57a5a743894a0e4a801fc3","secPasswdTip":null,"secPasswd":null,"deptName":null,"positionName":null,"validTime":1293901323000,"lastLoginTime":1279165615000,"lastLoginIp":"127.0.0.1","loginCount":77,"createTime":1274405926000
里面"validTime":1293901323000"
因为不是Date类型,所以
即使加上renderer : Ext.util.Format.dateRenderer('Y-m-d')
页面还是输出 NaN-NaN-NaN
这里如何转换validTime,还是说在后台转换
1.首先要确保你store中的field是成功的把时间字符串转换为date类型
服务器返回的数据如下
"roleLimits":"11111111111111111111111111111111"},"recId":1,"idx":null,"shopId":7,"loginName":"admin","passwd":"21232f297a57a5a743894a0e4a801fc3","secPasswdTip":null,"secPasswd":null,"deptName":null,"positionName":null,"validTime":1293901323000,"lastLoginTime":1279165615000,"lastLoginIp":"127.0.0.1","loginCount":77,"createTime":1274405926000
里面"validTime":1293901323000"
因为不是Date类型,所以
即使加上renderer : Ext.util.Format.dateRenderer('Y-m-d')
页面还是输出 NaN-NaN-NaN
var store = new Ext.data.JsonStore({ // 定义数据源为远程代理和JSON数据格式 url : 'user/list.json', root : "userList", totalProperty : 'userCount', fields : ["recId", "loginName", "userName", "role.roleName", "validTime","enabled","shopId"] });
这里如何转换validTime,还是说在后台转换
3 楼
l101y1982j
2009-10-23
天猪,我来捧你的场了哈。
另外,关于日期格式,大家可以去我的博客看一下《Extjs日期格式问题》一和二
另外,关于日期格式,大家可以去我的博客看一下《Extjs日期格式问题》一和二
2 楼
atian25
2009-10-05
whaosoft 写道
呵呵 前些日子我遇到类似功能了 例如输 1/5, 1-5 ... 等都要转成 mmm dd yy的 不过我偷懒了 日期对不对都交给后台了 要不太麻烦 (说的是 2月假如 输了 31号)那种情况 不知道 ext 实现我说的这功能没
啥意思?你想在DateField任意输入后,自动转换? 那就自己修改下DateField的相关方法咯,应该不难,看看源码即知,
1 楼
whaosoft
2009-09-30
呵呵 前些日子我遇到类似功能了 例如输 1/5, 1-5 ... 等都要转成 mmm dd yy的 不过我偷懒了 日期对不对都交给后台了 要不太麻烦 (说的是 2月假如 输了 31号)那种情况 不知道 ext 实现我说的这功能没
发表评论
-
[4.x] Ext.ux.button.AutoRefresher
2011-05-23 11:22 2780/** * @class Ext.ux.b ... -
ExtJS 4.x 定制你的js
2011-05-01 00:04 0... -
ExtJS4.x 随笔(2011-04-29更新)
2011-04-29 13:41 38281.某个激活/禁用的checkboxfield,需要提交后台的 ... -
ExtJS 4.0 改善Ext.grid.plugin.RowEditing (重构,v1.4版本,2011-09-11)
2011-04-27 15:24 12735Ext4.0 自带的Ext.ux.RowEditing还不够完 ... -
ExtJS Tree刷新后自动展开并选择节点
2010-07-29 10:48 17747很久没写EXTJS的tip了... 今天帮组员写了一个 ... -
仅供纪念,曾做过的一些界面截图
2010-07-06 16:55 3524仅供记录用. 1.亚运(EXTJS) ... -
ExtJS3.x 随笔(2010-07-08更新)
2010-07-02 17:15 3623谨用该贴来记录一些使 ... -
Ext JS 3.2.0发布 -- 不少令人振奋的特性(更新翻译后的release-notes)
2010-04-01 15:02 3782不少令人振奋的新功能 1.form里面的复合组件 ---写 ... -
Ext 3.0.1 Release Notes
2009-08-31 07:58 3963难熬的三天....JE终于恢复了.... 可惜要付费 ... -
也谈谈Ext.Grid之记录用户使用习惯—隐藏列
2009-08-27 15:58 7606在论坛看到http://www.iteye ... -
ExtJS 常见问题 - by tz
2009-08-14 16:13 0经常在群里面被问到的一些问题,不如汇集起来算了... ... -
ExtJS 3.0 优秀扩展简介 (持续更新)
2009-08-14 10:14 17338自带示例里面的扩展就 ... -
ExtJS 2.3/3.0 定制你所需要的模块
2009-08-12 13:49 13276很实在的一个需求,就是 ... -
ExtJS Combo 下拉列表正常显示HTML标签内容
2009-08-11 15:02 5914解决问题: http://www.iteye.com/pro ... -
ExtJS 3.0 Designer Preview (官方的IDE可视化工具)
2009-08-11 12:35 24696原文地址: http://extjs.com/blog/200 ... -
ExtJS Menu嵌套combo等控件时,自动隐藏/遮盖等bug的解决方案
2009-08-06 12:41 62292010-07-08补充: DateField隐藏的 ... -
ExtJS 输入框/MessageBox.prompt 禁止粘贴
2009-07-30 13:33 6796回答问题http://www.iteye.com/proble ... -
ExtJS 修复3.0里面的LovCombo(下拉多选框)的Bug
2009-07-27 16:16 11368如果你不知道lovcombo是什么,看http://setti ... -
续:ExtJS Chart 扩展(重构了下,并写了个新的示例--内存监控)
2009-07-27 15:55 5974续前文:http://atian25.iteye.com/bl ... -
ExtJS Chart 扩展 - 增加对数据的过滤等操作
2009-07-24 17:41 919109.07.27 , 重构了下,详见:http://atia ...
相关推荐
- **实用工具(Utils)**:EXTJS提供了各种实用工具,如数据处理、JSON操作、Ajax请求、日期和数组管理等。 5. **EXTJS 2.0的组件体系**: EXTJS 2.0对框架进行了重构,组件体系更加清晰,包括基本组件、工具栏...
10. `editorgrid` - `Ext.grid.EditorGridPanel`:可编辑的表格,允许用户直接在表格中修改数据。 11. `grid` - `Ext.grid.GridPanel`:标准的表格组件,用于展示数据。 12. `paging` - `Ext.PagingToolbar`:分页...
11. **`editorgrid`** - `Ext.grid.EditorGridPanel`,可编辑的表格组件,允许用户直接在表格中编辑数据。 12. **`propertygrid`** - `Ext.grid.PropertyGrid`,属性表格组件,用于展示对象的属性。 13. **`...
11. **`editorgrid`:** 可编辑的表格组件,允许用户直接在表格中编辑数据,通过`Ext.grid.EditorGridPanel`类实现。 12. **`propertygrid`:** 属性表格组件,用于展示对象的属性列表,通过`Ext.grid.PropertyGrid`...
- **`editorgrid` (Ext.grid.EditorGridPanel)**: 可编辑的表格组件,允许用户直接在表格内进行数据编辑。 - **`propertygrid` (Ext.grid.PropertyGrid)**: 属性表格组件,专门用于展示对象的属性。 - **`editor` ...
- `editorgrid`: `Ext.grid.EditorGridPanel` — 可编辑的表格。 - `grid`: `Ext.grid.GridPanel` — 表格。 - `panel`: `Ext.Panel` — 面板。 - `progressbar`: `Ext.ProgressBar` — 进度条。 - `splitbutton`: `...
在Extjs开发过程中,`xtype`(扩展类型)是极为重要的一个概念。它实际上是一种类型标识符,用于快速创建特定类型的组件实例。通过使用预定义的`xtype`值,开发者可以方便地构建出各种复杂的用户界面而无需编写大量...
- **可编辑的表格(EditorGridPanel)**: - 在表格的基础上增加了编辑功能,用户可以直接修改数据。 #### 七、与服务器交互 - **数据存储(Store)**: - 存储和管理数据集,支持本地数据和远程数据加载。 - **...
表单面板(FormPanel)和各类字段如复选框(Checkbox)、组合框(ComboBox)、日期字段(DateField)、隐藏字段(Hidden)、HTML编辑器(HtmlEditor)、数字字段(NumberField)、单选按钮(Radio)、文本区域(TextArea)、文本字段...
19. **Ext.grid.EditorGridPanel** 是可编辑的GridPanel,通过在`ColumnModel`中为列添加编辑器(如`TextField`)实现数据的编辑,对于日期数据可能需要使用特定的编辑器如`DateField`。 EXTJS的灵活性和强大功能使...
- **EditorGridPanel**: `Ext.grid.EditorGridPanel`,可编辑的表格组件。 - **GridPanel**: `Ext.grid.GridPanel`,表格组件。 - **PagingToolbar**: `Ext.PagingToolbar`,分页工具栏。 - **Panel**: `Ext....
`Ext.grid.EditorGridPanel` 是一个扩展了 `Ext.grid.GridPanel` 的组件,允许直接在表格中编辑数据。它结合了表格视图和表单编辑功能,使得数据编辑变得更加直观。 #### 九、Ext.tree.TreePanel -- 树的使用 **...
- **描述**: 可编辑的表格组件,允许用户直接在表格中编辑数据。 - **用途**: 管理系统中的数据编辑功能。 **Ext.grid.PropertyGrid** - **描述**: 属性表格,用于显示对象的属性及其值。 - **用途**: 查看和编辑...
3. **表单组建**:EXTJS提供了一系列用于构建表单的组件,如Editor(编辑器)、EditorGridPanel(可编辑的表格)、GridPanel(表格)、DatePicker(日期选择器)等。这些组件使得在Web上处理用户输入数据变得简单。 ...
- **表单及元素组件**:`Ext.Editor`(编辑器)、`Ext.grid.EditorGridPanel`(可编辑的表格)等。 EXTJS 的强大之处在于它提供了丰富的组件库和灵活的布局机制,使得开发者可以轻松构建复杂的应用程序界面,同时...
- **EditorGridPanel**:具备编辑功能的网格面板,适用于数据表格的编辑操作。 - **GridPanel**:基本的数据表格组件,可展示大量数据并支持排序、过滤等功能。 - **PagingToolbar**:分页工具栏,用于处理大量数据...
- **表单及元素组件**:Editor(编辑器)、EditorGridPanel(可编辑表格)等。 EXT_JS的强项在于它的组件化设计,使得开发者能够快速地搭建复杂的UI界面,并且提供了丰富的功能和良好的性能。通过对EXT_JS的学习和...
通常,这包括`extjs/resources/css/ext-all.css`用于样式,`extjs/adapter/ext/ext-base.js`作为适配器,以及`extjs/ext-all.js`包含EXT_JS的核心功能。`Ext.onReady`函数在页面加载完成后执行,是EXT_JS应用的启动...
- **主要用途**:通常用于图形编辑应用或需要用户自定义颜色的应用场景中。 **1.4 Component (Ext.Component)** - **xtype**: `component` - **功能描述**:Component 是所有 Ext 组件的基础类,它定义了所有 Ext ...