2011-03-23 17 views
2

私は次の日付フィールドを持っています。前日の日付を取得したいのですが、どうすれば入手できますか?私のフォームパネルで が1日前の日付を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オブジェクトにはaddメソッドがないため、これは機能しません。 Ext.Date.addを使って以下の答えが働いた –

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メソッドがありますが、itemコレクションにアクセスするにはcallParent()メソッドの後にコードを設定してください。例:

initComponent: function() { 
      ... 
    this.callParent(arguments); 
      this.items.getByKey('fromdate').value = Ext.Date.add (new Date(),Ext.Date.DAY,1); 
      ... 
} 
関連する問題