Получение значения от JQuery datepicker
Если я хочу отобразить встроенную подсказку JQUERY UI dateline, добавив ее в DIV, как $("div#someID").datepicker()
- как мне получить доступ к выбранной дате? Я предполагаю, что если он не связан с INPUT
, то он не будет отправлен с формой.
Думаю, что в качестве продолжения, если мне нужно связать его с элементом INPUT, есть ли способ управлять позиционированием datepicker относительно элемента INPUT? Если бы я хотел, чтобы указатель даты появился выше или сбоку элемента, а не ниже, как бы я это сделал?
Простите меня, если этот ответ где-то действительно очевиден.
Ответы
Ответ 1
Если вы хотите получить дату, когда пользователь ее выберет, вы можете сделать это:
$("#datepicker").datepicker({
onSelect: function() {
var dateObject = $(this).datepicker('getDate');
}
});
Я не уверен во второй части вашего вопроса. Но вы пробовали использовать таблицы стилей и относительное позиционирование?
Ответ 2
Вы можете использовать метод getDate
:
var d = $('div#someID').datepicker('getDate');
Это даст вам объект Date в d
.
Нет никаких вариантов позиционирования всплывающего окна, но при необходимости вы можете что-то сделать с помощью CSS или beforeShow
.
Ответ 3
Вы можете удалить атрибут имени этого ввода, поэтому он не будет отправлен.
Чтобы получить доступ к значению этого элемента управления:
$("div#someID").datepicker( "getDate" )
и вы можете взглянуть на документ в http://jqueryui.com/demos/datepicker/
Ответ 4
$('div#someID').datepicker({
onSelect: function(dateText, inst) { alert(dateText); }
});
вы должны привязать его только к элементу ввода
Ответ 5
Вы можете сделать это следующим образом - с проверкой только для того, чтобы привязать датупикер к элементу.
var dt;
if ($("div#someID").is('.hasDatepicker')) {
dt = $("div#someID").datepicker('getDate');
}
Ответ 6
Чтобы установить датупиксера рядом с полем ввода, вы можете использовать следующий код.
$('#datepicker').datepicker({
beforeShow: function(input, inst)
{
inst.dpDiv.css({marginLeft: input.offsetWidth + 'px'});
}
});
Ответ 7
Если выбранные вами элементы не одни, вам необходимо использовать этот способ:
$('[type="date"]').datepicker();
$('[type="date"]').change(function() {
var date = $(this).datepicker("getDate");
console.log(date);
});