2011-01-27 49 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个空格。要获得更多编辑帮助,请单击[?]工具栏图标。

相关问题