Jquery Datepicker не выбирает дату по умолчанию - PullRequest
3 голосов
/ 26 апреля 2010

У меня настроен мой DatePicker

$("#scheduled_date_163").datepicker({
    onSelect: function(dateText, inst) {
      jQuery.get("/tasks/inplace_edit?id=scheduled_date_163&class_name=Task&value=" + dateText,  function(data){
        $('#scheduled_date_163').html(data);
        $('#scheduled_date_163').removeClass('hasDatepicker');
      })
    }
  });

$('#scheduled_date_163').datepicker( "option", "defaultDate", $.datepicker.parseDate("d m y", "31 8 2009") );

Как видите, дата жестко закодирована. Он должен быть заменен некоторым кодом. Тем не менее, средство выбора даты отказывается забрать дату! Это всегда показывает мне текущую дату. Невозможно понять, почему. Я даже пытался указать дату в строке и +7 и т. Д. Но сама сегодняшняя дата отображается как дата по умолчанию.

Что может быть причиной этого?

UPDATE

Элемент с schedule_date_163 не является текстовым полем. Это div.On клик, который выполняет вышеупомянутый javascript datepicker.

<div id="scheduled_date_163">
    <p class='date'>None</p>
</div>

Нет способа повторения идентификатора div на странице.

Ответы [ 2 ]

2 голосов
/ 26 апреля 2010

ДЕМО: http://jsbin.com/uqevo3/2/edit

$("#scheduled_date_163").datepicker({
   defaultDate: "31-8-2009", //OR $.datepicker.parseDate("dd mm yy", "31 8 2009")
   dateFormat: 'dd-mm-yy', // format as ##-##-####
    onSelect: function(dateText, inst) {
      jQuery.get("/../" + dateText,  function(data){
        $('#scheduled_date_163').html(data);
        $('#scheduled_date_163').removeClass('hasDatepicker');
      })
    }
  });

ПРИМЕЧАНИЕ: нет необходимости объявлять два раза один и тот же указатель даты, это ваша главная проблема!

тогда, если вам нужно установить некоторые постоянные опции для нескольких сборщиков дат, вы можете использовать служебные функции .setDefaults ()

2 голосов
/ 26 апреля 2010

Это работает для меня:

$('#scheduled_date_163').datepicker({defaultDate: $.datepicker.parseDate("d m y", "31 8 2009")});

Однако, это просто устанавливает дату по умолчанию в самом средстве выбора даты, это не изменит поле ввода. Для последнего вы можете просто присвоить значение с помощью метода val ().

(Часть onSelect не имеет отношения к проблеме.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...