由于项目需要,有一个要求初稿日期,现在datepicker需要选择的计划初稿日期,必须小于要求初稿日期:
JS代码如下
// 时间选择器
var planTime = "<s:date name="#RootTaskDSdto.EProject.EContract.deadline" format = "yyyy,MM,dd"/>";//取要求初稿日期planTimeSplit = planTime.split(",");//将日期根据","分割
var maxMonth = planTimeSplit[1]-1;//取分割后的月份,减去1(因为datepicker中月是0~11,正常日期月份是1~12)
$("#planTime").datepicker({
defaultDate : "+1w",
changeMonth : true,
changeYear : true,
dateFormat : "yy-mm-dd",
dayNamesMin : [ '日', '一', '二', '三', '四', '五', '六' ],
monthNamesShort : [ '01月', '02月', '03月', '04月', '05月', '06月', '07月', '08月', '09月', '10月', '11月', '12月' ],
yearRange : '-10:+5',
showButtonPanel : true,
closeText : "关闭",
currentText : "今天",
defaultDate : 0,
numberOfMonths : 1,
maxDate:new Date(planTimeSplit[0],maxMonth,planTimeSplit[2])//将分割后的年月日分别塞进datepicker的最大值
});
用planTime取到struts标签中后台传过来的要求初稿日期;再用split以","将这个日期分割为年月日三个数组值;由于正常通用日期月份是按照1~12排序,而datepicker中是按照0~11排序,因此传入datepicker最大值中之前必须减去1;然后按照datepicker的API分别将年月日塞进去。这样datepicker在点击的时候,就只有要求初稿日期之前的日期是可选的,后面的均为灰色。

本文介绍如何使用JS代码配置DatePicker,确保所选计划初稿日期不超出特定截止日期。通过解析后台传来的日期并调整DatePicker设置,实现只允许选择截止日期前的日期。
752

被折叠的 条评论
为什么被折叠?



