Extjs中DisplayField的日期或者数字格式化扩展


Posted in Javascript onSeptember 03, 2010
使用 Ext.form.FormPanel 来处理数据时候,某些字段是需要只读的。当然我们可以使用 Ext.form.TextField,然后设置成 ReadOnly,不过这样子的显示效果不是很好,因为始终会有个输入框。所以我们必须使用 Ext.form.DisplayField,但是 Ext.form.DisplayField 没有一个format的属性,也不具备 renderer 这个事件,比如日期字段
var form = new Ext.form.FormPanel({
frame: true,
renderTo: 'form-div',
items: [{
      xtype: 'displayfield',
       fieldLabel: 'Date',
       value: new Date()
    }]
});
那它显示的就有点不正确了
Extjs中DisplayField的日期或者数字格式化扩展
 

那么我们可以重写一下 Ext.form.DisplayField,让他支持 format 属性

Ext.override(Ext.form.DisplayField, {
  getValue: function () {
    return this.value;
  },
  setValue: function (v) {
    this.value = v;
    this.setRawValue(this.formatValue(v));
    return this;
  },
  formatValue: function (v) {
    if (this.dateFormat && Ext.isDate(v)) {
      return v.dateFormat(this.dateFormat);
    }
    if (this.numberFormat && typeof v == 'number') {
      return Ext.util.Format.number(v, this.numberFormat);
    }
    return v;
  }
});
我们给 Ext.form.DisplayField 加了两个属性: dateFormat 和 numberFormat,然后我们将上面的 FormPanel 改一下

var form = new Ext.form.FormPanel({

frame: true,

renderTo: 'form-div',

items: [{

xtype: 'displayfield',

fieldLabel: 'Date',

value: new Date(),

dateFormat: 'm/d Y'

}]

});

Extjs中DisplayField的日期或者数字格式化扩展

应该还是比较 perfect 的,哈哈哈

Javascript 相关文章推荐
使用jQuery实现验证上传图片的格式与大小
Dec 03 Javascript
利用JQuery写一个简单的异步分页插件
Mar 07 Javascript
基于jquery实现三级下拉菜单
May 10 Javascript
JavaScript九九乘法口诀表的简单实现
Oct 04 Javascript
前端开发之CSS原理详解
Mar 11 Javascript
angularjs2中父子组件的数据传递的实例代码
Jul 05 Javascript
详解Vue2中组件间通信的解决全方案
Jul 28 Javascript
微信小程序之滚动视图容器的实现方法
Sep 26 Javascript
使用express搭建一个简单的查询服务器的方法
Feb 09 Javascript
javascript高仿热血传奇游戏实现代码
Feb 22 Javascript
从0到1构建vueSSR项目之node以及vue-cli3的配置
Mar 07 Javascript
Vue页面手动刷新,实现导航栏激活项还原到初始状态
Aug 06 Javascript
JavaScript的类型简单说明
Sep 03 #Javascript
JavaScript类和继承 this属性使用说明
Sep 03 #Javascript
JavaScript类和继承 prototype属性
Sep 03 #Javascript
用Javascript实现Sleep暂停功能代码
Sep 03 #Javascript
javascript 仿QQ滑动菜单效果代码
Sep 03 #Javascript
原生javascript实现图片轮播效果代码
Sep 03 #Javascript
IE6不能修改NAME问题的解决方法
Sep 03 #Javascript
You might like
用PHP的ob_start();控制您的浏览器cache!
2007/02/14 PHP
五个PHP程序员工具
2008/05/26 PHP
php实例分享之html转为rtf格式
2014/06/02 PHP
destoon二次开发入门示例
2014/06/20 PHP
PHP获取当前相对于域名目录的方法
2015/06/26 PHP
js变量作用域及可访问性的探讨
2006/11/23 Javascript
第一个JavaScript入门基础 document.write输出
2010/02/22 Javascript
js constructor的实际作用分析
2011/11/15 Javascript
js 截取或者替换字符串中的数字实现方法
2016/06/13 Javascript
Bootstrap表单布局样式源代码
2016/07/04 Javascript
AngularJS基础 ng-model 指令详解及示例代码
2016/08/02 Javascript
JavaScript 是什么意思
2016/09/22 Javascript
AngularJS使用带属性值的ng-app指令实现自定义模块自动加载的方法
2017/01/04 Javascript
Vue数据驱动模拟实现2
2017/01/11 Javascript
详解node.js平台下Express的session与cookie模块包的配置
2017/04/26 Javascript
vue.js实现条件渲染的实例代码
2017/06/22 Javascript
nodejs中安装ghost出错的原因及解决方法
2017/10/23 NodeJs
微信小程序学习总结(三)条件、模板、文件引用实例分析
2020/06/04 Javascript
[02:09]2018DOTA2亚洲邀请赛TNC赛前采访
2018/04/04 DOTA
python读写LMDB文件的方法
2018/07/02 Python
pygame游戏之旅 添加键盘按键的方法
2018/11/20 Python
Python装饰器限制函数运行时间超时则退出执行
2019/04/09 Python
pytorch GAN生成对抗网络实例
2020/01/10 Python
Rakuten Kobo台湾:电子书、eReaders和Reading应用程式
2017/11/24 全球购物
求职信内容考虑哪几点
2013/10/05 职场文书
酒店销售经理岗位职责
2014/01/31 职场文书
银行优秀员工事迹
2014/02/06 职场文书
企业宣传方案
2014/03/04 职场文书
小学重阳节活动总结
2015/03/24 职场文书
广播体操比赛主持词
2015/06/29 职场文书
感谢师恩主题班会
2015/08/17 职场文书
前端学习——JavaScript原生实现购物车案例
2021/03/31 Javascript
Python中re模块的元字符使用小结
2022/04/07 Python
Nginx的gzip相关介绍
2022/05/11 Servers
CentOS7安装MySQL8的超级详细教程(无坑!)
2022/06/10 Servers
在Oracle表中进行关键词搜索的过程
2022/06/10 Oracle