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 相关文章推荐
JavaScript实现的购物车效果可以运用在好多地方
May 09 Javascript
浅谈JavaScript中运算符的优先级
Jul 07 Javascript
纯javascript实现图片延时加载方法
Aug 21 Javascript
js事件处理程序跨浏览器解决方案
Mar 27 Javascript
js鼠标按键事件和键盘按键事件用法实例汇总
Oct 03 Javascript
Angular和Vue双向数据绑定的实现原理(重点是vue的双向绑定)
Nov 22 Javascript
JavaScript注入漏洞的原理及防范(详解)
Dec 04 Javascript
Bootstrap导航条鼠标悬停下拉菜单
Jan 04 Javascript
bootstrap是什么_动力节点Java学院整理
Jul 14 Javascript
vue+echarts实现动态绘制图表及异步加载数据的方法
Oct 17 Javascript
基于jQuery实现可编辑的表格
Dec 11 jQuery
OpenLayers3加载常用控件使用方法详解
Sep 25 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学习 变量使用总结
2011/03/24 PHP
使用 PHPStorm 开发 Laravel
2015/03/24 PHP
tp5框架无刷新分页实现方法分析
2019/09/26 PHP
Laravel等框架模型关联的可用性浅析
2019/12/15 PHP
JavaScript 字符串处理函数使用小结
2010/12/02 Javascript
JS中获取数据库中的值的方法
2013/07/14 Javascript
构造函数+原型模式构造js自定义对象(最通用)
2014/05/12 Javascript
js的image onload事件使用遇到的问题
2014/07/15 Javascript
jQuery鼠标悬浮链接弹出跟随图片实例代码
2016/01/08 Javascript
js实现文字截断功能
2016/09/14 Javascript
Bootstrap表单使用方法详解
2017/02/17 Javascript
js中new一个对象的过程
2017/02/20 Javascript
js中Number数字数值运算后值不对的解决方法
2017/02/28 Javascript
python logging日志模块的详解
2017/10/29 Python
python自动查询12306余票并发送邮箱提醒脚本
2018/05/21 Python
python 读取文件并替换字段的实例
2018/07/12 Python
Python使用一行代码获取上个月是几月
2018/08/30 Python
Python从ZabbixAPI获取信息及实现Zabbix-API 监控的方法
2018/09/17 Python
浅析python 通⽤爬⾍和聚焦爬⾍
2020/09/28 Python
如何用Python进行时间序列分解和预测
2021/03/01 Python
Superdry极度干燥美国官网:英国制造的服装品牌
2018/11/13 全球购物
马德里著名的运动鞋商店:NOIRFONCE
2019/04/12 全球购物
应届生高等护理求职信
2013/10/12 职场文书
住房公积金接收函
2014/01/09 职场文书
2014年预备党员学习两会心得体会
2014/03/17 职场文书
中餐厅经理岗位职责
2014/04/11 职场文书
父母寄语大全
2014/04/12 职场文书
奉献演讲稿范文
2014/05/21 职场文书
幼儿园秋季开学寄语
2014/08/02 职场文书
大学生万能检讨书范例
2014/10/04 职场文书
2014年社区民政工作总结
2014/12/02 职场文书
2015年医生个人工作总结
2015/04/25 职场文书
个人求职意向书
2015/05/11 职场文书
读《皮囊》有感:理解是对他人的最大的善举
2019/11/14 职场文书
golang 如何用反射reflect操作结构体
2021/04/28 Golang
golang实现一个简单的websocket聊天室功能
2021/10/05 Golang