Не удалось запустить событие, когда дата по умолчанию выбрана с помощью Jquery datepicker - PullRequest
0 голосов
/ 18 марта 2019

Мне нужно запустить событие, когда дата по умолчанию выбрана во время загрузки страницы с помощью Jquery datepicker.Я объясняю мой код ниже.

<input name="date" type="text" id="alltour" class="datepickerdate" placeholder="" value="" >

$('#alltour').datepicker({
       dateFormat: 'dd-mm-yy',
       minDate: 0,
       beforeShowDay: enableAllTheseDays,
       onSelect: function(dateText, inst) {
            $('#alltour').val(dateText);
            console.log('selected date',$('#alltour').val());
       }
}).datepicker("setDate", new Date());

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

Ответы [ 2 ]

0 голосов
/ 18 марта 2019

Попробуйте trigger('change')

$(document).ready(function() {
  $('#alltour').datepicker({
    dateFormat: 'dd-mm-yy',
    minDate: 0,
  }).on('change', function(dateText, inst) {
    console.log('selected date', $('#alltour').val());
  }).datepicker("setDate", new Date()).trigger('change');
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>

<input name="date" type="text" id="alltour" class="datepickerdate" placeholder="" value="">
0 голосов
/ 18 марта 2019

В этом контексте была поднята ошибка для jquery https://bugs.jqueryui.com/ticket/8066

Однако в вопросе https://stackoverflow.com/a/13693779/5866606 предлагается обходной путь, просто щелкнув текущий день вручную с помощью jquery.

$('.ui-datepicker-current-day').click();

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

https://jsfiddle.net/520vqz7g/

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