如何验证 jquery datePicker 日期?
How to validate jquery datePicker dates?
我有两个输入框,startDate
和tilldate
。我正在使用 jQuery 日期选择器。
问题是当用户选择 startDate
然后在 tillDate
中只应启用两天供选择。例如 01/04/2015
那么 tilldate
可以是同一日期或下一个日期,02/04/2015
.
<td><input type="text" id="startDate" name="startDate" ></td>
<td><input type="text" id="tillDate" name="tillDate"></td>
$(function () {
var setDate;
$("#startDate")
.datepicker({
showOn: "button",
buttonImage: 'http://jqueryui.com/resources/demos/datepicker/images/calendar.gif',
buttonImageOnly: true,
buttonText: "Select Date",
changeMonth: true,
changeYear: true,
maxDate: '0',
onSelect: function (selected) {
$("#tillDate").datepicker("option", "minDate", selected)
setDate = $("#startDate").val();
alert(setDate);
}
});
$("#tillDate").datepicker({
showOn: "button",
buttonImage: 'http://jqueryui.com/resources/demos/datepicker/images/calendar.gif',
buttonImageOnly: true,
buttonText: "Select Date",
changeMonth: true,
changeYear: true,
maxDate: setDate + "2D",
onSelect: function (selected) {
$("#startDate").datepicker("option", "maxDate", selected)
}
});
$(".ui-datepicker-trigger").mouseover(function () {
$(this).css('cursor', 'pointer');
});
});
好的,如果我没听错,你只是不想让用户选择一个早于开始日期值的日期?
如果是这样,为什么不将开始日期值放入全局变量中,然后在您的 tilldate 函数中检索它。一旦你有了这个值,你就可以检查 tilldate 值是否不是开始日期之前的日期,如果是这样就清除输入。
但是您可能还需要验证开始日期。
根据我的理解,您只需要两天时间就可以完成。请检查下面的代码
<script type="text/javascript">
$(function () {
var setDate;
$("#startDate")
.datepicker(
{
showOn: "button",
buttonImage: 'http://jqueryui.com/resources/demos/datepicker/images/calendar.gif',
buttonImageOnly: true,
buttonText: "Select Date",
changeMonth: true,
changeYear: true,
maxDate:'0' ,
onSelect: function (selected) {
setDate = $("#startDate").val();
var maxDatevale=new Date(setDate);
maxDatevale.setDate(maxDatevale.getDate()+1);
alert(maxDatevale);
$("#tillDate").datepicker("option", "minDate", setDate)
$("#tillDate").datepicker("option", "maxDate", maxDatevale)
}
});
$("#tillDate").datepicker({
showOn: "button",
buttonImage: 'http://jqueryui.com/resources/demos/datepicker/images/calendar.gif',
buttonImageOnly: true,
buttonText: "Select Date",
changeMonth: true,
changeYear: true,
maxDate: setDate + "2D",
onSelect: function (selected) {
$("#startDate").datepicker("option", "maxDate", selected)
}
});
$(".ui-datepicker-trigger").mouseover(function () {
$(this).css('cursor', 'pointer');
});
});
</script>
我有两个输入框,startDate
和tilldate
。我正在使用 jQuery 日期选择器。
问题是当用户选择 startDate
然后在 tillDate
中只应启用两天供选择。例如 01/04/2015
那么 tilldate
可以是同一日期或下一个日期,02/04/2015
.
<td><input type="text" id="startDate" name="startDate" ></td>
<td><input type="text" id="tillDate" name="tillDate"></td>
$(function () {
var setDate;
$("#startDate")
.datepicker({
showOn: "button",
buttonImage: 'http://jqueryui.com/resources/demos/datepicker/images/calendar.gif',
buttonImageOnly: true,
buttonText: "Select Date",
changeMonth: true,
changeYear: true,
maxDate: '0',
onSelect: function (selected) {
$("#tillDate").datepicker("option", "minDate", selected)
setDate = $("#startDate").val();
alert(setDate);
}
});
$("#tillDate").datepicker({
showOn: "button",
buttonImage: 'http://jqueryui.com/resources/demos/datepicker/images/calendar.gif',
buttonImageOnly: true,
buttonText: "Select Date",
changeMonth: true,
changeYear: true,
maxDate: setDate + "2D",
onSelect: function (selected) {
$("#startDate").datepicker("option", "maxDate", selected)
}
});
$(".ui-datepicker-trigger").mouseover(function () {
$(this).css('cursor', 'pointer');
});
});
好的,如果我没听错,你只是不想让用户选择一个早于开始日期值的日期?
如果是这样,为什么不将开始日期值放入全局变量中,然后在您的 tilldate 函数中检索它。一旦你有了这个值,你就可以检查 tilldate 值是否不是开始日期之前的日期,如果是这样就清除输入。
但是您可能还需要验证开始日期。
根据我的理解,您只需要两天时间就可以完成。请检查下面的代码
<script type="text/javascript">
$(function () {
var setDate;
$("#startDate")
.datepicker(
{
showOn: "button",
buttonImage: 'http://jqueryui.com/resources/demos/datepicker/images/calendar.gif',
buttonImageOnly: true,
buttonText: "Select Date",
changeMonth: true,
changeYear: true,
maxDate:'0' ,
onSelect: function (selected) {
setDate = $("#startDate").val();
var maxDatevale=new Date(setDate);
maxDatevale.setDate(maxDatevale.getDate()+1);
alert(maxDatevale);
$("#tillDate").datepicker("option", "minDate", setDate)
$("#tillDate").datepicker("option", "maxDate", maxDatevale)
}
});
$("#tillDate").datepicker({
showOn: "button",
buttonImage: 'http://jqueryui.com/resources/demos/datepicker/images/calendar.gif',
buttonImageOnly: true,
buttonText: "Select Date",
changeMonth: true,
changeYear: true,
maxDate: setDate + "2D",
onSelect: function (selected) {
$("#startDate").datepicker("option", "maxDate", selected)
}
});
$(".ui-datepicker-trigger").mouseover(function () {
$(this).css('cursor', 'pointer');
});
});
</script>