2016-09-23 44 views
0

美好的一天,我正在進入一個大的EXT JS項目,不幸的是我完全不在Ext js中,我試圖儘可能多地學習從內容和範例,但我對這個基本問題感到震驚。Ext JS datepicker,從兩個不同的日曆獲取日期範圍

我有兩個不同的定義datepickers如下:

items: { 
         xtype: 'panel', 
         layout: 'hbox',      
         items: [{ 
          title: 'FROM', 
          margin: '5', 
          items: { 
           xtype: 'datepicker', 
           start: true, 
           reference: 'startDate', 
           maxDate: new Date(), 
           maxText: 'Future dates are not available', 
           bind: { 
            value: '{startDate}' 
           }, 
           showToday: false, 
           listeners: { 
            select: 'checkDateInterval' 
           } 
          } 
         }, { 
          title: 'TO', 
          margin: '5', 
          items: { 
           xtype: 'datepicker', 
           start: false, 
           reference: 'endDate', 
           bind: { 
            value: '{endDate}' 
           }, 
           maxDate: new Date(), 
           showToday: false, 
           listeners: { 
            select: 'checkDateInterval' 
           } 
          } 
         }] 
        } 

我succefully定義的控制器,在那裏我做了一個簡單的「執行console.log()」一切通過日期選擇器我:

Ext.define('xxx.xxx.xxx.xxxxxxxSetupController', { 
    extend: 'Ext.app.ViewController', 
    alias: 'controller.investmentsetupcontroller', 
    checkDateInterval: function (data){ 
     console.log("data: ", data); 
    } 
}); 

並且按預期工作。 唯一的問題是我收到了一個完整的對象console.log中的數據,我想應該有一個更簡單的方法來獲取兩個選定的日期。我可以問你一些建議來處理這個問題嗎?我的目標是獲得這兩個日期,進行一些計算並用數據調用另一個函數。

在此先感謝。

+0

我爲你準備了小提琴手。檢查這個,如果你想要相同,那麼罰款或修改,只要你願意,讓我知道然後將得到的價值爲您的計算日期 – UDID

+0

爲了讓那些迄今使用'data.value' – UDID

+0

好,這是非常簡單的最後,非常感謝你的帶領我! –

回答

2

要做到這一點,你需要使用data.value 你的代碼會像

checkDateInterval: function (data){ 
     console.log("data: ", data.value); 
} 

而且,這裏檢查的小提琴。 Fiddle