Получить значение начальной загрузки Datetimepicker в JavaScript

Мне нужно получить значение Datetimepicker в моей функции JavaScript. Я сделал что-то вроде этого, но это не работает:

$("#date").click( function(){
    alert(document.getElementById('datetimepicker1').value);
});

Это дает мне "undefined"

Ответы

Ответ 1

Либо используйте:

$("#datetimepicker1").data("datetimepicker").getDate();

Или (смотря на источник страницы):

$("#datetimepicker1").find("input").val();

Возвращаемое значение будет Date (для первого примера выше), поэтому вам нужно отформатировать его самостоятельно:

var date = $("#datetimepicker1").data("datetimepicker").getDate(),
    formatted = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate() + " " + date.getHours + ":" + date.getMinutes() + ":" + date.getSeconds();
alert(formatted);

Кроме того, вы можете просто установить формат как атрибут:

<div id="datetimepicker1" class="date">
    <input data-format="yyyy-MM-dd hh:mm:ss" type="text"></input>
</div>

и вы можете использовать $("#datetimepicker1").find("input").val();

Ответ 2

Кажется, что док эволюционировал.

Теперь нужно использовать: $("#datetimepicker1").data("DateTimePicker").date().

NB: это возвращает объект Moment, а не объект Date

Ответ 3

Для вызова функций, поддерживаемых Bootstrap-datetimepikcer, вы должны использовать синтаксис:

$('#datetimepicker').data("DateTimePicker").FUNCTION()

Таким образом, вы можете попробовать функцию:

$('#datetimepicker').data("DateTimePicker").date();

Документация: http://eonasdan.github.io/bootstrap-datetimepicker/Functions/

Ответ 4

Я использую последнюю версию Bootstrap 3 DateTime Picker (http://eonasdan.github.io/bootstrap-datetimepicker/)

Вот как вы должны использовать встроенный DateTime Picker:

var selectedDate = $("#datetimepicker").find(".active").data("day");

Возврат выше: 03/23/2017

Ответ 5

Или попробуйте $ ("# datetimepicker"). Data(). Date;

Ответ 6

Поскольку возвращаемое значение изменилось, $("#datetimepicker1").data("DateTimePicker").date() фактически возвращает объект момента, как сказал Александр Бурлие:

Кажется, документ эволюционировал.

Теперь нужно использовать: $ ("# datetimepicker1"). Data ("DateTimePicker"). Date().

NB. При этом возвращается объект Moment, а не объект Date

Поэтому мы должны использовать .toDate(), чтобы изменить это утверждение на дату как таковую:

$("#datetimepicker1").data("DateTimePicker").date().toDate();

Ответ 7

Это работает для меня, используя этот Bootsrap Datetimepiker, он возвращает значение, как показано во входных данных 2019-04-11, например, 2019-04-11

$('#myDateTimePicker').on('click,focusout', function (){
    var myDate = $("#myDateTimePicker").val();
    //console.log(myDate);
    //alert(myDate);
});

Ответ 8

Попробуйте это (сработало для меня), когда у меня был встроенный сборщик даты и времени Boostrap, это способ получения выбранной даты и времени.

var selected_datetime = $("#datetimepicker").data("date");

Ответ 9

Я перепробовал все вышеперечисленные методы, и я не получил значение правильно в том же format, затем я нашел это.

$("#datetimepicker1").find("input")[1].value;

Приведенный выше код вернет значение в том же формате, что и в средстве выбора даты и времени.

Это может помочь вам, ребята, в будущем.

Надеюсь, это было полезно..