Показать сообщение отдельно
  #1 (permalink)  
Старый 23.04.2013, 07:41
Новичок на форуме
Отправить личное сообщение для maxim2 Посмотреть профиль Найти все сообщения от maxim2
 
Регистрация: 23.04.2013
Сообщений: 1

DatePicker активировать только те даты которые есть в базе
Привет.
С jQuery не сталкивался, вчера понадобилось его использовать.
Задача такая нужно сделать активными только те даты которые есть в базе Mysql, нашел кое-какие примеры но что то не хватает. При первом показе календаря массив с датами которые нужно сделать активными пустой, а когда перелеснеш месяц или год то уже все нормально. Подскажите.

html
<button id="selectDateRange">Тык</button>
<div id="dialog" title="Выбор дат">
<div id="datepicker"></div>


$(function() {
      $('button#selectDateRange').click(function(){
	    $('#dialog').dialog('open');
      });

     //var $dateShow = new Array("2013-04-11","2013-04-12","2013-04-13","2013-04-14","2013-04-15","2013-04-16","2013-05-17");
     var $dateShow = [];
	  $.getJSON("time.php",
	    function(data) {
          for (x = 0; x < data.length; x++) {
            $dateShow[x] = data[x].start;
          }
      });

      function addDates(date){
        var $return=false;
        var $returnclass ="unavailable";
        $checkdate = $.datepicker.formatDate('yy-mm-dd', date);
        for(var i = 0; i < $dateShow.length; i++) {
          if($dateShow[i] == $checkdate) {
            $return = true;
            $returnclass= "available";
          }
        }

        return [$return,$returnclass];
      }

      $("#datepicker").datepicker({
        beforeShowDay: addDates,
        dateFormat: 'dd.mm.yy',
        changeMonth: true,
        changeYear: true,
      });

      $('#dialog').dialog({
        autoOpen: false,
        width: 400,
        modal: true,
        resizable: false
      });
 });
Ответить с цитированием