【发布时间】:2021-09-13 01:01:28
【问题描述】:
我有一个 MySQL 表,其中插入了用户的可用日期。现在我要做的是获取那些“日期”并在 JQuery 日期选择器日历上突出显示它们。
这是我的代码。
// HTML
<div id="datetimepicker1"></div>
// Adapter-fetch.php
$global_user_id = 5;
$find_query = $db->prepare("SELECT date_available FROM user_dates WHERE user_id = :user_id");
$find_query->bindParam(':user_id', $global_user_id);
$find_query->execute();
$result_find = $find_query->fetchAll(PDO::FETCH_ASSOC);
if(count($result_find) > 0) {
foreach($result_find as $row) {
$date_available = $row['date_available'];
echo $date_available;
}
} else {
echo 'No dates available';
}
// JAVASCRIPT
<script>
$(document).ready(function () {
$.post('<?php echo $project_name; ?>/snippets/adapter-fetch.php', {},
function(data) {
alert(data);
var SelectedDates = {};
SelectedDates[new Date('2021/6/6')] = new Date('2021/6/6').toString();
$('#datetimepicker1').datepicker({
dateFormat: "yy-mm-dd",
multidate: true,
beforeShowDay: function(date) {
var Highlight = SelectedDates[date];
if (Highlight) {
return [true, "Highlighted", Highlight];
} else {
return [true, '', ''];
}
}
});
});
});
</script>
// MYSQL user_dates Table
2021-06-02
2021-06-03
2021-06-01
所以上面的代码按原样工作。现在我想要做的是将当前的“SelectedDates”替换为我使用“adapter-fetch.php”获取的那些。当我提醒“数据”时,它会返回类似“2021-06-022021-06-032021-06-01”的日期结果。所以我想知道如何修改这些数据以替换“SelectedDates”中的当前日期并使其工作?
【问题讨论】:
-
试试
console.log(data)显示什么? -
显示相同的数据格式“2021-06-022021-06-032021-06-01”。
-
真的,不用逗号分隔吗?完全没有分隔符?
-
回应有点令人惊讶。您会期望某种 json 编码结构
-
正确。没有逗号分隔或分隔符。它完全按照我写的那样显示。
标签: php jquery ajax datepicker