jQuery datepicker установить выбранную дату, на лету



Как я могу изменить выбранную дату выбора даты jquery динамически на лету?
Я сказал, что создал встроенный выбор даты.
Затем через некоторое время я хочу отразить другую дату там, не воссоздавая datepicker с нуля.



Я попробовал метод setDate, но не сработал, и в doc.



есть еще один (расширенная?) плагин здесь, но я хочу использовать плагин, который поставляется с помощью jquery.пользовательский интерфейс.все.js.

1014   11  

11 ответов:

какую версию jQuery-UI вы используете? Я протестировал следующее С 1. 6r6, 1.7 и 1.7.1, и это работает:

//Set DatePicker to October 3, 2008
$('#dateselector').datepicker("setDate", new Date(2008,9,03) );

проверьте, что дата, которую вы пытаетесь установить, находится в допустимом диапазоне дат, если установлены параметры minDate или maxDate.

в этом примере показано, как использовать значение по умолчанию в раскрывающемся календаре и значение в текстовом поле. Он также показывает, как установить значение по умолчанию на предыдущую дату.

selectedDate-это еще одна переменная, которая содержит текущую выбранную дату элемента управления calendar

    var date = new Date();
    date.setDate(date.getDate() - 1);

    $("#datepicker").datepicker({
        dateFormat: "yy-mm-dd",
        defaultDate: date,
        onSelect: function () {
            selectedDate = $.datepicker.formatDate("yy-mm-dd", $(this).datepicker('getDate'));
        }
    });

    $("#datepicker").datepicker("setDate", date);

отметил, что для DatePicker кита Вуда (http://keith-wood.name/datepickRef.html) следующие работы-обратите внимание, что установка даты по умолчанию является последней:

    $('#datepicker').datepick({
        minDate: 0,
        maxDate: '+145D',
        multiSelect: 7,
        renderer: $.datepick.themeRollerRenderer,
        ***defaultDate: new Date('1 January 2008')***
    });

по какой-то причине, в некоторых случаях я не мог заставить setDate работать.

обходной путь, который я нашел, состоит в том, чтобы просто обновить атрибут значения данного ввода. Конечно, сам datepicker не будет обновляться, но если вы просто ищете, чтобы отобразить дату, он отлично работает.

var date = new Date(2008,9,3);
$("#your-input").val(date.getMonth()+"/"+date.getDate()+"/"+date.getFullYear());
// Will display 9/3/2008 in your #your-input input

setDate только кажется проблемой с встроенным datepicker, используемым в jQuery UI, конкретной ошибкой является InternalError: слишком много рекурсии.

это работает для меня:

$("#dateselector").datepicker("option", "defaultDate", new Date(2008,9,3));

$('.дата-выбор).datePicker ().вал (новая дата ()).триггер('изменить')

наконец-то, что я ищу в течение последних нескольких часов! Мне нужно инициировать изменения, а не просто установить дату в текстовом поле!

У меня было много проблем с методом setDate, а также. кажется, работает только в v1. Чем кажется, однако работа с использованием dpSetSelected метод:

    $("#dateselector").dpSetSelected(new Date(2010, 0, 26).asString());

удачи!

Это старый нить, но я просто хочу дать некоторую информацию, как я использовал. Если вы хотите установить дату сегодня вы можете просто применить его, как показано ниже.

 $("#datepickerid").datepicker("setDate", "0");

Если вы хотите установить несколько дней до/после текущей даты, а затем использовать символ -/+ символ того, сколько дней вы хотите, как показано ниже.

 $("#datepickerid").datepicker("setDate", "-7");
 $("#datepickerid").datepicker("setDate", "+5");

или вы можете просто

$('.date-pick').datePicker().val(new Date()).trigger('change')

Comments

    Ничего не найдено.