ExtJS EditorGridPanel中时间日期编辑问题的总结

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'
      })
    }]
  })
}

 

 

或者

 

{header:"时间",dataIndex:"",renderer:function(v){   return return Ext.util.Format.date(v, 'Y-m-d');}}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值