我只是一个业余爱好者,我在DateTimePicker可用时间列表上遇到了一些麻烦。我正在寻求帮助,以了解为什么代码不起作用。我没有建立任何网站或类似的,我只是在练习。
基本:
<script>
$('#datetimepicker4').datetimepicker({
minDate:new Date(),
allowTimes:['10:30','11:30','12:30'] });
</script>
&#13;
这3个允许的时间完美列出。
我的问题只是一个校长:为什么它不像这样工作?
仅举例:
$time1 = "10:30";
$time2 = "11:30";
$time3 = "12:30";
$list = "'" . $time2 . "'," . $time3 . "'";
echo "<script>\n";
echo "$('#datetimepicker4').datetimepicker({ minDate:new Date(), allowTimes:[".json_encode($list)."] });";
echo "\n</script>";
如果我打印出&#34; $ list&#34; php变量,它将显示:&#39; 11:30&#39;&#39; 12:30&#39;。但是在js中只显示了1个允许时间而不是2个。实际上它可以是10个不同的时间,仍然只显示1.
我无法看到两种上市方式之间的区别。
如果你能给我答案,我将不胜感激。
谢谢。
答案 0 :(得分:2)
它只显示一次的原因是你只是将一个参数打印到allowedTimes。
[".json_encode($list)."]
其中所有内容都用双引号括起来。您的输出为["'11:30',12:30'"]
。因此,您需要删除双引号才能拥有多个值。
此外,这不是最有效的方法。如果你知道你要打印一个阵列,为什么不设置这样的时间?
示例:
<?php
$allowTimes = array(
'10:30',
'11:30',
'12:30'
);
?>
<script>
$('#datetimepicker4').datetimepicker({ minDate:new Date(), allowTimes:<?php echo json_encode($allowTimes) ?> });
</script>