JQuery DatePicker, OnSelect не будет работать - PullRequest
47 голосов
/ 20 мая 2009

Я не могу заставить onSelect работать над моим jQuery datepicker.

Вот мой код:

<script type="text/javascript">
$(function() {
    $('.date-pick').datePicker( {
        onSelect: function(date) {
            alert(date)
        },
        selectWeek: true,
        inline: true,
        startDate: '01/01/2000',
        firstDay: 1,
    });
});
</script>

Как будто он не регистрирует функцию onSelect. Что я делаю не так?

Ответы [ 8 ]

84 голосов
/ 20 мая 2009

Без запятой после последнего свойства.

Точка с запятой после предупреждения (дата);

Дело о DatePicker (не DatePicker)

Проверьте ваши другие прописные / строчные буквы для свойств.

$(function() {
    $('.date-pick').datepicker( {
        onSelect: function(date) {
            alert(date);
        },
        selectWeek: true,
        inline: true,
        startDate: '01/01/2000',
        firstDay: 1
    });
});
15 голосов
/ 20 мая 2009

эквивалентом datePicker onSelect является событие dateSelected.

$(function() {
    $('.date-pick').datePicker( {
        selectWeek: true,
        inline: true,
        startDate: '01/01/2000',
        firstDay: 1,
    }).bind('dateSelected', function(e, selectedDate, $td) {
        alert(selectedDate);
    });
});

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

6 голосов
/ 24 февраля 2017
$('.date-picker').datepicker({
                    autoclose : true,
                    todayHighlight : true,
                    clearBtn: true,
                    format: 'yyyy-mm-dd', 
                    onSelect: function(value, date) { 
                         alert(123);
                    },
                    todayBtn: "linked",
                    startView: 0, maxViewMode: 0,minViewMode:0

                    }).on('changeDate',function(ev){
                    //this is right events ,trust me
                    }
});
4 голосов
/ 09 ноября 2010

Лучшее решение - установить значения по умолчанию для DatePicker

следует код, который я использовал

$.datepicker.setDefaults({
    onSelect: function () {
        $(this).focus();
        $(this).nextAll('input, button, textarea, a').filter(':first').focus();
    }
});
3 голосов
/ 14 октября 2012
<script type="text/javascript">
    $(function() {
        $("#datepicker").datepicker({ 
              onSelect: function(value, date) { 
                 window.location = 'day.jsp' ; 
              } 
        });
    });
 </script>

<div id="datepicker"></div>

Я думаю, вы можете попробовать это. Это отлично работает.

3 голосов
/ 20 мая 2009

Функция datepicker чувствительна к регистру и все строчные. Следующее, однако, прекрасно работает для меня:

$(document).ready(function() {
  $('.date-pick').datepicker( {
    onSelect: function(date) {
        alert(date);
    },
    selectWeek: true,
    inline: true,
    startDate: '01/01/2000',
    firstDay: 1
  });
});
1 голос
/ 23 декабря 2009

Я скачал datepicker с jqueryui.com/download и получил версию 1.7.2, но функция onSelect все равно не работала Вот что у меня было -

$("#datepicker").datepicker();

$("#datepicker").datepicker({ 
      onSelect: function(value, date) { 
         alert('The chosen date is ' + value); 
      } 
});

Я нашел решение на этой странице - проблема с выбором jquery datepicker . Удален $ ("# datepicker"). Datepicker (); один раз и это сработало.

0 голосов
/ 20 мая 2009

Это должен быть «datepicker», а не «datePicker», если вы используете плагин jQuery UI DatePicker. Возможно, у вас есть другой, но похожий плагин , который не поддерживает обработчик выбора.

...