我尝试只启用数据库中的日期,经过多次研究后我想出了这些代码
这是我的剧本
<script>
<?php
$dis = pg_query("SELECT 'date_purchased' FROM 'tree_solds';");
foreach ($dis as $disa){
$dis .="'".$disa."',";
}
$dis = substr($dis,0,-1);
?>
var array=[<?php echo $dis; ?>];
jQuery(document).ready(function($) {
$( "#datepicker" ).datepicker({ maxDate: new Date(),
dateFormat: "yy-mm-dd",
beforeShowDay: function(date){
if($.inArray($.datepicker.formatDate('yy-mm-dd', date), array) > -1)
{
return [true,"","Available"];
}
else{
return [false,'',"Not Available"];
}
}
});
});
</script>
这些是我的html文件
<div><input type="text" id="datepicker" />
当我查询控制台时 显示的错误是这些
GET http://localhost/resources/demos/style.css
index.php:40 Uncaught SyntaxError: Unexpected token <
morris.min.js:6 Uncaught Error: Graph container element not found
这是我的第37至40行
<link rel="stylesheet" href="/resources/demos/style.css">
<script>
<?php
但是目前当我点击文本框时没有任何显示。我一直在看代码几个小时,似乎找不到任何错误。
在我输入这部分之前,一切都运转良好
<?php
$dis = pg_query("SELECT 'date_purchased' FROM 'tree_solds';");
foreach ($dis as $disa){
$dis .="'".$disa."',";
}
$dis = substr($dis,0,-1);
?>
var array=[<?php echo $dis; ?>];
任何人都可以帮助我吗? 感谢
答案 0 :(得分:0)
从初始化中删除maxDate: new Date()
。而是将日期存储在某个变量中,然后将maxDate设置为该变量。同时删除引发错误的文件并尝试它。
演示:http://jsfiddle.net/lotusgodkk/yXMKC/1138/
$(document).ready(function ($) {
var array = ["2014-12-9", "2014-12-12", "2014-12-15"]; //for testing
$("#datepicker").datepicker({
//maxDate: new Date(),
dateFormat: "yy-mm-dd",
beforeShowDay: function (date) {
if ($.inArray($.datepicker.formatDate('yy-mm-dd', date), array) > -1) {
console.log('in')
return [true, "", "Available"];
} else {
console.log('n')
return [false, '', "Not Available"];
}
}
});
});