2011-03-23 78 views
2

我有以下日期字段我想获得一天前的日期,我怎么能得到这个? 在我的表单面板如何获得前一天的日期在extjs字段

items: [{ 
    fieldLabel: 'Start Date', 
    name: 'fromdate', 
    ref: '../fromdate', 
    id: 'fromdate', 
    vtype: 'daterange', 
    value: new Date(), 
    endDateField: 'todate' // id of the end date field 
}, { 
    fieldLabel: 'End Date', 
    name: 'todate', 
    id: 'todate', 
    vtype: 'daterange', 
    value: new Date(), 
    startDateField: 'fromdate' // id of the start date field 
}] 

今天,我收到2011年3月23日,但我想2011年3月22日我怎样才能得到2011年3月22日?

回答

2

试试这个:

new Date().add(Date.DAY, -1); 
+0

这对我不起作用,因为Date对象没有添加方法。下面的答案使用Ext.Date.add确实有效 – 2012-10-07 10:12:54

0

或者这样:

var date = new Date(); 
date.setDate(date.getDate()-1); 
6

说到ExtJS的语言,你可以使用Ext.Date库操作的日期。例如:

1)在项目的价值配置:

 Ext.Date.add (new Date(),Ext.Date.DAY,1) 

根据您的代码逻辑,则可以通过多种方式修改日期字段的默认值

 { 
      ... 
      vtype: 'daterange', 
      value : Ext.Date.add (new Date(),Ext.Date.DAY,1), 
      fromDateField: 'fromdate', 
      ... 
     } 

2)在组件的事件中。基本上,ExtJS容器有initComponent方法,它是最先运行的,但一定要在callParent()方法之后设置你的代码才能访问items集合。例如:

initComponent: function() { 
      ... 
    this.callParent(arguments); 
      this.items.getByKey('fromdate').value = Ext.Date.add (new Date(),Ext.Date.DAY,1); 
      ... 
} 
相关问题