2011-01-27 27 views
1

我目前在我的應用程序中使用EXTJS EditorGridPanel,對於其中一個列輸入,我需要用戶能夠選擇一個月和一天(不是一年) 。EXTJS:月/日選擇器(即沒有年份)

我目前使用DateField來做到這一點,但我需要能夠在UI中禁用它的「年」方面。我並不在乎最終的「價值」是否與它有關聯,我可以簡單地忽略它。我已經搜查過,看看有沒有人做過這樣的事情,但我唯一的發現是那些只能顯示月/年的人。

我的其他選擇是創建我自己的自定義輸入(對於月份和日期的組合框,其中組合框根據月份而變化),但是,我真的沒有太多時間讓自己成爲我將不得不經歷學習曲線,因爲我之前從未創建過自定義輸入擴展。

- >那麼我的一個大問題是,有沒有人聽說過現有的EXTJS月/日選擇器?

任何幫助將被大量佔用堆棧溢出的人!

+1

實際上想到這一點,在日曆表單中選擇月/日選擇器是沒有意義的,因爲每週的每一天的佈局都沒有意義。我想我真正想要的是一個現有的每月/每天組合框選擇器(其中天數將根據選擇的月份而改變) – ssawchenko 2011-01-28 17:15:21

回答

0

儘管我可能會創建自己的自定義組件作爲編輯器使用,但如果您覺得這樣做不舒服,是否考慮過在您的網格列模型中將月份和日期字段分成不同的列?

另一種選擇是將輸入掩碼添加到文本字段中(您需要在cm中指定一個作爲customEditor)。我相信這是通過自定義vtypes完成的。此輸入掩碼將強制用戶以您指定的格式輸入日期。

使用這種方法會:

  1. 保持所有月/日數據在一列
  2. 用出的現成的組件簡化了UI代碼。 (IMO這是學習的ExtJS鍵)
+0

我想到了單獨的列,但是這會給我的網格總共11列,這似乎是臨界的「太多了」,我會考慮輸入掩碼,這不是我想到的選項,謝謝! – ssawchenko 2011-01-27 21:38:07

+0

然而,我們最終並不需要控制權,但是在回想原始問題之後 - 創建一個自定義組件 – ssawchenko 2011-09-13 15:33:47

0

試着這麼做:

{ 
    xtype: 'datepickerfield', 
    name: 'OrderDate', 
    label: 'Order Date', 
    picker: { yearTo: 2011, yearFrom: 2020 } 
} 

我希望這會幫助你。

+0

爲什麼你認爲今年會在你的解決方案中被禁用? – 2014-04-17 08:56:44

0

試試這個

picker: { 
    slotOrder: [ 'month', 'day' ] 
    } 

您的帖子似乎包含格式不正確的代碼的代碼。請使用代碼工具欄按鈕或CTRL + K鍵盤快捷鍵將所有代碼縮進4個空格。要獲得更多編輯幫助,請單擊[?]工具欄圖標。

相關問題