код:
<script>
$(document).ready(function(){
var events = <?php echo $results; ?>;
$("#calen").datepicker({
beforeShowDay: function(date) {
var result = [true, '', null];
var matching = $.grep(events, function(event) {
return event.Date.valueOf() === date.valueOf();
});
if (matching.length) {
result = [true, 'highlight', null];
}
return result;
},
onSelect: function(dateText) {
var date,
selectedDate = new Date(dateText),
i = 0,
event = null;
while (i < events.length && !event) {
date = events[i].Date;
if (selectedDate.valueOf() === date.valueOf()) {
event = events[i];
}
i++;
}
if (event) {
alert(event.Title);
}
}
});
});
</script>
<?php
$sqls = mysqli_query($con,"select pack_program, pack_duration, start_date, end_date from package_detail where pack_name = '".$row['pack_name']."'");
while($fetch = mysqli_fetch_array($sqls))
{
$data[] = array(
'Title' => $fetch['pack_program'],
'Duration' => $fetch['pack_duration'],
'Date' => "new Date(".$fetch['start_date'].")"
);
}
$results = str_replace('</', '<\/', json_encode($data, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES));
?>
Ожидаемый результат:
var events = [{Title:"Tour Program : Delhi / Chandigargh Arrival - Shimla ( 02 Nights ) – Manali ( 03 nights ) – Chandigarh ( 01 night ) Delhi / Chandigargh Departure Total : 06 Nights & 07 Days Tour",Duration:"7 days 6 Nights",Date:new Date("08/28/2018")}];
Неожиданный вывод:
var events = [{"Title":"Tour Program : Delhi / Chandigargh Arrival - Shimla ( 02 Nights ) – Manali ( 03 nights ) – Chandigarh ( 01 night ) Delhi / Chandigargh Departure Total : 06 Nights & 07 Days Tour","Duration":"7 days 6 Nights","Date":"new Date(08/28/2018)"}];
В следующем коде я создал календарь событий, используя jQuery datepicker, который отлично работает для expected output
, как я упоминал выше. Но это не работает для unexpected output
упомянутого выше. Итак, как я могу изменить в $data[]
файл, который дает мне expected output
. Как я могу это сделать? Пожалуйста, помогите мне.
Спасибо