我正在使用daterangepicker来选择startDate和endDate。由于startDate工作正常,但endDate显示为无效日期。
这是我的代码:
var dateformat = "D MMM YYYY";
var displayDate = function() {
var dateformat = "D MMM YYYY";
var begin = moment($("#add-start-date").val());
var end = moment($("#add-end-date").val());
if( begin !== null && end !== null ) {
$("#add-start-date").parent().removeClass("hidden");
$("#add-start-date").parent().siblings().removeClass("hidden");
} else if( begin !== null ) {
$("#add-start-date").parent().removeClass("hidden");
$("#add-start-date").parent().siblings().addClass("hidden");
}
if (begin !== null){
$("#add-start-date").html(begin.format(dateformat));
}
if (end !== null){
$("#add-end-date").html(end.format(dateformat));
}
$("#add-when-results").removeClass("hidden");
// $(".facet-when h5").hide();
if( begin === null && end === null) {
$("#add-when-results").addClass("hidden");
$(".facet-when h5").show();
}
};
$(function(){
$(".facet-when").daterangepicker({
format: dateformat,
locale: {
fromLabel: 'From',
toLabel: 'To'
},
parentEl: "#mem-add-overlay .facet-when"
},
function(start, end) {
var begin_string = "";
var end_string = "";
if( start !== null ) {
begin_string = start.format("YYYY-MM-DD");
}
if( end !== null ) {
end_string = end.format("YYYY-MM-DD");
}
$("#add-start-date").val(begin_string);
if( begin_string === end_string ) {
$("#add-end-date").val("");
} else {
$("#add-end-date").val(end_string);
}
displayDate();
});
});
Html行:
<input id="id_add-when" maxlength="100" name="add-when" type="hidden">
单击输入字段时,将打开日历。 startDate将是当前日期,endDate将是相同的。如果我直接单击“应用”按钮,则startDate会正常运行,但endDate会返回InvalidDate。再次如果我选择endDate,那么endDate就可以了。
请提供任何建议