Выбор даты как в текстовом поле, так и в значке изображения с альтернативными датами помогает!

#jquery #jquery-ui #datepicker

#jquery #jquery-пользовательский интерфейс #выбор даты

Вопрос:

С этим чертовски много времени.

Прямо сейчас для отображения календаря работает только изображение. Я пытаюсь отобразить «оба» из них. Поле ввода и изображение.

Вот оно на jsbin:http://jsbin.com/ewadi3/3

Я пробовал showOn: оба .. но не работает!!

 <script type="text/javascript">
$(function() {
        pickerOptions = {
            changeMonth: true,
            changeYear: true,
            showButtonPanel: true,
            dateFormat: 'yy-mm-dd',
            altFormat: 'M d, yy',
            showOn: 'both',
            buttonImage: '/images/calendar.gif'
             };
        $('#beginDate').datepicker(pickerOptions);
        $('#beginDate').datepicker('option', 'altField', '#beginDate2');
        $('#endDate').datepicker(pickerOptions);
        $('#endDate').datepicker('option', 'altField', '#endDate2');
    });</script>
  

Комментарии:

1. Не могли бы вы вставить свой код на jsbin.com ?

2. Вот оно на jsbin! jsbin.com/ewadi3/3

Ответ №1:

Я думаю, что вы повторно инициализируете свои средства выбора дат. В приведенном выше коде вы вызываете datePicker() функцию дважды ->

 $('#beginDate').datepicker(pickerOptions);
$('#beginDate').datepicker('option', 'altField', '#beginDate2');
  

Я полагаю, что при втором вызове он перезаписывает ваши параметры выбора. Когда я удаляю вторую строку для #BeginDate.datepicker и #EndDate.datepicker, она отображается для обоих. Я надеюсь, это поможет!

Пример JSFiddle

Комментарии:

1. .datepicker (‘option’, ‘altField’, ‘#beginDate2’) предназначен для настройки параметров после инициализации datepicker, поэтому я не думаю, что это приведет к перезаписи начальных параметров.

Ответ №2:

Из просмотра кода в jsbin

   <td width="17" valign="top"><input type="hidden" name="beginDate" id="beginDate" value="" /></td>
    <td width="98" valign="top"><input type="text" id="beginDate2" size="12" value=""/></td>
    <td width="17" valign="top"><input type="hidden" name="endDate" id="endDate" value=""></td>
     <td width="98" valign="top"><input name="endDate2" type="text" id="endDate2" size="12" value="" />
  

Вы устанавливаете выбор даты с помощью опций выбора для #BeginDate и #EndDate, но эти входные данные скрыты, хотя кнопка все еще отображается. Текстовые поля, которые видны, не были расширены с помощью datepicker.