Как получить данные из Mysql на основе выбора DatePicker? - PullRequest
0 голосов
/ 20 сентября 2011

У меня есть страница, на которой я показываю jquery datepicker с некоторыми выделенными датами.Как получить данные и заполнить div на основе даты, щелкнувшей в окне выбора даты.Вот мой код:

<!DOCTYPE html>
<html>
<head>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>


<script type="text/javascript">

var dates = [new Date(2011, 9-1, 20), new Date(2011, 9-1, 21),new Date(2011, 10-1, 1)];

$(function(){

    $('#datepicker').datepicker({
        numberOfMonths: [1,1],
        dateFormat: 'dd/mm/yy',
        beforeShowDay: highlightDays
    });

    function highlightDays(date) {
        for (var i = 0; i < dates.length; i++) {
            if (dates[i].getTime() == date.getTime()) {
                return [true, 'highlight'];
            }
        }
        return [true, ''];   
    }  

});
</script>

<style>

#highlight, .highlight {
    background-color: #cc0000;
}

</style>  


</head>
<body style="font-size:62.5%;">

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

<div id="events">
Data From Mysql To Go Here
</div>
</body>
</html>

1 Ответ

1 голос
/ 20 сентября 2011

хорошо, вам нужно будет выполнить ajax-вызов скрипта на стороне сервера (php или asp.net или на любом другом языке / фреймворке на ваш выбор)

edit , увидев, что вы хотитекод для выбора даты, я немного изменил javascript end edit

вот так:

//add the onSelect function to your date picker, and put the code to fetch your events in there
$('#datepicker').datepicker({
  numberOfMonths: [1,1],
  dateFormat: 'dd/mm/yy',
  beforeShowDay: highlightDays,
  onSelect: function(date){
    // put your selected date into the data object
    var data = {'date': date};

    // do the ajax call to the serverside script and pass 'data' to it.
    $.get("serverurl/data/getdata.php", data, function(data){
      // this function is called upon successfully completing the ajax call
      //do your magic here to put the data elements into your div, see below for an example
      data.Events.each(function(d){
        var e = $('<div/>').text(d.Title);
        $('#events').append(e);
      });
    });
  }
});

однако для этого вам понадобятся ваши getdata.php вернуть правильный JSON, как это:

{
  Events: [ {
      Title: "event 1", 
      Description: "event description"
    }, 
    {
      Title: "event 2", 
      Description: "event description"
    } ]
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...