如何在datepickerphp中设置与程序周期相对应的日期范围


How to set date range corresponding to the program period in datepicker php

我想在php中制作jquery日期选择器,它只显示与程序周期对应的1个月。例如,我的程序有一个保存在数据库中的定期系统。2014年10月,系统周期设置为"2012.10",标记为周期="1"。下一个周期="2"是2014年11月,设置为"2014.11"。在系统中,它有一个关闭月份的功能,因此它不与服务器日期时间绑定。可以说,我们正处于"2014.10"时期。所以我想制作一个只显示"2014年10月"日期的日期选择器。

这是我的脚本:

$("#tanggal_pembelian").datepicker({
    dateFormat:"dd-mm-yy",
    stepMonths: 0,
    showAnim:"slideDown",
    showOptions:{direction:"up"} 
});

问题是:

如果我设置"stepMonths:0",那么每当服务器日期时间更改为另一个月="2014年11月"时,问题就会出现,因此日期选择器只显示"2014年十一月"时段。但系统期限仍然在"2014年10月",因为我仍然没有在系统中运行月末功能。

希望有人能帮我回答问题。我真的很感激。谢谢你。

我通过在html中创建一些隐藏输入来告诉jquery日期选择器minDate和maxDate值,从而解决了这个问题。

这是代码:

$("#tanggal_pembelian").datepicker({
    dateFormat:"dd-mm-yy",
    stepMonths: 0,
    minDate: new Date($('#startdate').val()),
    maxDate: new Date($('#enddate').val()),
    showAnim:"slideDown",
    showOptions:{direction:"up"} 
});

接下来我们必须搜索当前期间的月初和月底。之后,只需将值放入隐藏的输入文本字段:

$prd = explode(".",$_SESSION[period]);
$startdate = date("Y-m-01", mktime(0,0,0,$prd[1],1,$prd[0]));
$enddate = date("Y-m-t", mktime(0,0,0,$prd[1],1,$prd[0]));
echo "<input type=hidden id='startdate' name='startdate' maxlength=20 value='$startdate' readonly>";
echo "<input type=hidden id='enddate' name='enddate' maxlength=20 value='$enddate' readonly>";

也许我的答案可以帮助其他有同样问题的人。。。谢谢大家。。。