EXTJS: Выбор месяца / дня (т.е. без года) - PullRequest
1 голос
/ 27 января 2011

В настоящее время я использую EXTJS EditorGridPanel в своем приложении, и для одного из входов столбца я требую, чтобы пользователь мог выбрать месяц и день (без года).

В настоящее время я использую DateField для этого, но мне нужно иметь возможность отключить аспект «год» в пользовательском интерфейсе.Мне все равно, если «ценность» в конце концов связана с годом, я могу просто проигнорировать это.Я искал, чтобы видеть, сделал ли кто-нибудь такую ​​вещь, но мои единственные выводы - люди, которые таким образом показывают только Месяц / Год.

Мой другой вариант - создать свой собственный ввод (с помощью комбинированных списков для месяца и дня, где комбо-день меняется в зависимости от месяца), однако, честно говоря, у меня не так много времени, чтобы его создать.я, как и мне, должен был бы пройти через кривую обучения, так как я никогда раньше не создавал пользовательского расширения ввода.

-> Таким образом, мой большой вопрос заключается в том, слышал ли кто-нибудь о существующем средстве выбора месяца / дня EXTJS?

Любая помощь была бы очень подходящим переполнением стека!

Ответы [ 3 ]

0 голосов
/ 27 августа 2011

Попробуйте что-то вроде:

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

Надеюсь, это поможет вам.

0 голосов
/ 27 августа 2011

попробуйте это

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

Ваше сообщение содержит код, который неправильно отформатирован как код. Сделайте отступы всего кода на 4 пробела, используя кнопку на панели инструментов кода или сочетание клавиш CTRL + K. Для получения дополнительной справки по редактированию щелкните значок панели инструментов [?].

0 голосов
/ 27 января 2011

Хотя я бы, вероятно, создал свой собственный пользовательский компонент для использования в качестве редактора, если вам неудобно это делать, рассматривали ли вы возможность разбивать поля «Месяц» и «День» на отдельные столбцы в модели столбцов сетки?

Другой вариант - добавить маску ввода в текстовое поле (вам нужно указать ее в качестве customEditor в вашем cm). Я считаю, что это делается с помощью пользовательских vtypes. Эта маска ввода заставит пользователя вводить дату в указанном вами формате.

Использование этого подхода будет:

  1. хранить все данные месяца / дня в одном столбце
  2. упрощает ваш код пользовательского интерфейса, используя готовые компоненты. (IMO, это ключ к изучению ExtJS)
...