Использование jQuery datepicker с Chronic - PullRequest
0 голосов
/ 24 октября 2011

Я пытаюсь получить хорошую комбинацию, работающую на сильные стороны jQuery datepicker и Chronic parser date для Ruby on Rails.

Выбор даты в jQuery UI полезен для визуального выбора даты. Но я также хотел бы, чтобы пользователь мог вводить даты в любом формате по своему усмотрению и позволять библиотеке Chronic обрабатывать ввод.

У меня есть поле ввода текста, к которому я присоединяю средство выбора даты, и функция выбора даты прекрасно работает. Но мне также хотелось бы, чтобы пользователь игнорировал средство выбора даты и просто вводил «последний вторник» и нажимал клавишу ввода, я хотел бы отправить «последний вторник» и разрешить хроническому анализу этого на 2011-10-18. Однако происходит то, что значение текстового поля заменяется текущей датой из средства выбора даты.

Похоже, есть опция, которая должна позволить сборщику дат работать помощником, а не единственным источником ввода. Но я не могу найти способ отключить эту функцию.

ОБНОВЛЕНИЕ:

У меня есть улучшение, когда я показываю календарь только нажатием кнопки, а не в фокусе, но, тем не менее, кажется неправильным, даже если вы выбрали средство выбора даты, что если вы наберете какой-нибудь текст и нажмете введите, что перезаписывается датой выбора даты!

  $('.dl_input_production_date').datepicker({
    showOn: 'button',
    buttonImage: '/images/calendar.gif',
    buttonImageOnly: true
  });

1 Ответ

0 голосов
/ 24 октября 2011

Получил ответ в другом месте: просто скрыть указатель даты при нажатии клавиши для исходного поля ввода. Это означает, что при запуске набора даты средство выбора даты исчезает, и введенный ввод используется непосредственно.

  $('.dl_input_production_date').datepicker({
    showOn: 'button',
    buttonImage: '/images/calendar.gif',
    buttonImageOnly: true
  }).keydown( function() {
    $(this).datepicker( "hide" );
  });
...