我正在尝试实施日期时间选择器。它适用于第一个功能,您无法在开始日期之前选择结束日期。但是当我添加一个用于设置日期格式的函数时,整个过程就停止了。我做错了什么?
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.min.js" type="text/ javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"
type="text/javascript"></script>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css"
rel="Stylesheet"type="text/css"/>
<script type="text/javascript">
$(function () {
$("#txtFrom").datepicker({
numberOfMonths: 2,
onSelect: function (selected) {
var dt = new Date(selected);
dt.setDate(dt.getDate() + 1);
$("#txtTo").datepicker("option", "minDate", dt);
}
});
$("#txtTo").datepicker({
numberOfMonths: 2,
onSelect: function (selected) {
var dt = new Date(selected);
dt.setDate(dt.getDate() - 1);
$("#txtFrom").datepicker("option", "maxDate", dt);
}
});
$.validator.methods.date = function(value, element) {
return this.optional(element) || Date.parseExact(value, "dd-MM-yyyy");
}
});
});
</script>
答案 0 :(得分:0)
我不知道你的$.validator.methods.date
......
所以请尝试使用jQuery UI日期格式选项:
$("#txtFrom").datepicker({
numberOfMonths: 2,
dateFormat: 'dd-mm-yy'
});
$("#txtFrom").on("change",function(){
var dt = $(this).datepicker('getDate');
dt.setDate(dt.getDate()+1);
$("#txtTo").datepicker("option", "minDate", dt);
});
$("#txtTo").datepicker({
numberOfMonths: 2,
dateFormat: 'dd-mm-yy'
});
$("#txtTo").on("change",function(){
var dt = $(this).datepicker('getDate');
dt.setDate(dt.getDate()-1);
$("#txtFrom").datepicker("option", "maxDate", dt);
});
注意:我使用了其他CDN用于此小提琴中使用的库...
它需要一些https://
。