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

时间:2014-11-04 14:16:53

标签: php jquery datepicker

我想在php中制作jquery datepicker,只显示与节目期间相对应的1个月。 例如,我的程序有一个已保存在数据库中的定期系统。对于2014年10月,系统期间设置为" 2012.10"标记为句点=" 1"。下一个时期=" 2"是2014年11月设置为" 2014.11"。在系统中,它具有关闭月份的功能,因此它不受服务器日期时间的约束。让它说,我们在" 2014.10"期。 所以我想制作只在2014年10月""。

中显示日期的datepicker

这是我的剧本:

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

问题是:

如果我设置" stepMonths:0",只要服务器日期时间更改为另一个月=" 2014年11月"所以datepicker只显示" 2014年11月"仅限期间。但系统期限仍然在2014年10月"因为我仍然没有在系统中运行近月功能。

希望有人可以帮助回答我的问题。对此,我真的非常感激。谢谢。

1 个答案:

答案 0 :(得分:0)

我通过在html中创建一些隐藏输入来告诉jquery datepicker 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>";

也许我的回答可以帮助其他有同样问题的人......谢谢所有......