#javascript #jquery #jquery-ui-datepicker
#javascript #jquery #jquery-ui-datepicker
Вопрос:
Как и спрашивалось ранее, я хочу сохранить выбранную дату в datepicker в значении. Итак, как было рекомендовано, я сделал следующее.
$( function() {
var date_choisie = $("#calendrier").datepicker({ dateFormat: "yy-mm-dd" }).val();
$( "#calendrier" ).datepicker('setDate', new Date());
console.log(date_choisie);
} );
Но ничего не появляется, когда я работаю с консолью.журнал текущей даты, даже не предупреждение или ошибка.
Есть предложения, почему? Спасибо
Комментарии:
1. пожалуйста, предоставьте еще немного кода и ссылку на другой вопрос, о котором вы говорите
2. вы хотите получить дату по выбранной дате или текущее значение даты, сохраненное в переменной?
3. Извините, я хочу console.log(date_choisie), и при консоли ничего не появляется. запишите это
4. да, это то, что я спросил, вы хотите получить правильную дату, указанную в datepicker? это будет
2020-09-20
— правильно?5. Ну, на самом деле это будет 19-09-2020, но да, вы поняли. Или, может быть, 20-09-2020, это зависит от того, где вы живете. Обратите внимание, что я изменил формат на дд-мм-гг
Ответ №1:
Вы logic
неправильно определяете дату datePicker
— чтобы получить дату, которая отображается в jQuery ui datepicker
настоящее время, вы можете использовать native
функцию getDate средства выбора даты
Как только у вас есть дата, вы можете format
использовать ее с помощью formatDate
метода для того, что вы хотели бы сохранить как! Оно будет сохранено в variable
which can accessed
для других вещей, если потребуется.
//get date in a variable
var date_choisie = $('#calendrier').datepicker('getDate');
var formatDate = $.datepicker.formatDate("yy-mm-dd", date_choisie);
console.log(formatDate); //2020-09-20
Живая рабочая демонстрация:
$(function() {
$("#calendrier").datepicker({
dateFormat: "yy-mm-dd",
})
//set date as current
$("#calendrier").datepicker('setDate', new Date());
//get date in a varoable
var date_choisie = $('#calendrier').datepicker('getDate');
var formatDate = $.datepicker.formatDate("yy-mm-dd", date_choisie);
console.log(formatDate); //2020-09-20
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<p>Date: <input type="text" id="calendrier"></p>
Комментарии:
1. Кстати, теперь я могу использовать formatdate для обработки данных на основе formatdate?
2. @samaywise Итак, вы имели в виду, что хотите увидеть обновленную дату в консоли. регистрируйте, когда вы вносите изменения в дату календаря?
3. Да, именно так. Я думаю, что метод onSelect может помочь
4. @samaywise да, в этом нам нужно использовать метод onSelect в
datepicker
и сохранить выбранную дату в переменной 🙂5. @samaywise Здесь работает скрипка для вас => jsfiddle.net/trqn7akL — проверьте консоль. в журнале будет отображаться выбранная дата.