最近用到My97DatePicker日期控件,深入之中,感觉到它的强大之处。
就写个小例子吧!
要求:前后日期限制在一个月之内,且前边日期不能大于后边日期。用My97DatePicker自带的当然不能实现啦,不过my97的强大之处就在于:
它可以自定义自己想要控制日期的方式。
1.js代码如下:
function getMaxDate() {
var endTime = $('#startTime-from').val();
var bigMonth = "1,3,5,7,8,10,12";
var month = endTime.substring(endTime.indexOf("-") + 2,endTime.lastIndexOf("-"));
var yearMonth = endTime.substring(0,endTime.lastIndexOf("-") + 1);
if(month == '2') {
return yearMonth + "29";
} else if(month.indexOf(bigMonth) != -1) {
return yearMonth + "31";
} else {
return yearMonth + "30";
}
}
function getMinDate() {
var startTime = $('#startTime-to').val();
var yearMonth = startTime.substring(0,startTime.lastIndexOf("-") + 1);
return yearMonth + "01";
}
2.js代码写好了,接着怎么办呢,上边的js就是自己定义的最大和最小时间。现在就开始在text上试效果了,text框代码如下:
发送时间: <input type="text" name="cardTimeStart" id="startTime-from" class="Wdate" οnmοuseοver="this.style.cursor='hand';"
οnclick="var date=getMinDate();WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss',maxDate:'#F {$dp.$(\'startTimeto\')}',minDate:date})" />
至: <input type="text" name="cardTimeEnd" id="startTime-to" class="Wdate" οnclick="var date=getMaxDate();WdatePicker({dateFmt:'yyyy-MM- dd HH:mm:ss',minDate:'#F{$dp.$D(\'startTime-from\')}',maxDate:date})" οnmοuseοver="this.style.cursor='hand';" />
看出来了没有,我的js方法用在哪里?哈哈,解决了吧。