jQuery datepicker, 2 вопроса - PullRequest
       2

jQuery datepicker, 2 вопроса

0 голосов
/ 01 ноября 2010

Для первого вопроса у меня есть функция:

$(function() {
  $('#datepicker').datepicker({
       onSelect: function () {
           $('#date').text($(this).val());
       },
       onChangeMonthYear: function () {
           $('#date').text($(this).val());
      }
  });
});

onSelect работает, но onChangeMonthYear - нет. Я использую это неправильно?

Второй вопрос, как только я получу изменение месяца, как я могу разделить дату, чтобы я мог поместить ее в URL-адрес, такой как «myfile.php? Y = 2010 & m = 11 & d = 01». У меня в основном фон PHP, поэтому взрывать строку заманчиво, но я уверен, что есть лучший способ. Мысли об этом?

Ответы [ 2 ]

1 голос
/ 01 ноября 2010

В соответствии с документацией для onChangeMonthYear экземпляр года, месяца и даты выбирается как параметры:

функция (год, месяц, инст)

Позволяет определить собственное событие, когда средство выбора даты переходит на новый месяц и / или год. Функция получает выбранный год, месяц (1-12) и экземпляр DatePicker в качестве параметров. это относится к соответствующему полю ввода.

Так что попробуйте использовать это так:

$('.selector').datepicker({
   onChangeMonthYear: function(year, month, inst) { ... }
});


Что касается вашего второго вопроса, вы можете использовать метод API getDate для извлечения даты в объект даты:
var myDate = jQuery(myDatePicker).datepicker( 'getDate' );

Затем вы можете использовать методы объекта даты для извлечения частей даты. Например:

var url = "y=" + myDate.getFullYear() +
         "&m=" + myDate.getMonth() + 
         "&d=" + myDate.getDate();
0 голосов
/ 01 ноября 2010

Я выяснил свою проблему с onChangeMonthYear. То, как у меня было, это вызывал onSelect каждый раз, а также onChangeMonthYear, когда месяц менялся. Я переустановил его, и, кажется, работает нормально. Ниже приводится конечный результат, включая ответ Джастина и парня, который удалил его ответ:

$(function() {
   $('#datepicker').datepicker({
     onChangeMonthYear: function () {
         $('#date').text("Changed Month");
     },
     onSelect: function () {
         var date = $(this).val().split("/")
         $('#date').text("Month: " + date[0] + " Day: " + date[1] + " Year: " + date[2]);
     }
  });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...