问题描述
我在项目中使用DaterangePicker库,遇到一个问题,我的目标是第一次打开日历时,默认选择当前日期(完成),并且导航到同一天的另一个月或年时,随时选择,以便日历中始终有一个选定的日期。有一些特殊的情况需要考虑,例如所选日期是否为31,而下个月不包含该日期,因此应改为选择30,依此类推,但这不是问题。问题是我尝试使用setStartDate()来执行此操作,但是它没有用,尽管日期在我记录时正确更改,但未在日历中选择(缺少突出显示它的css类)。那么,有谁知道如何解决该问题或使用什么来实现我的目标?
谢谢
ngAfterViewChecked() {
if (this.isCalendarShown) {
var element = $(document.getElementsByClassName("daterangepicker show-calendar"))
.filter(function(){
return $(this).css('display') === 'block';
}).get(0);
var monthSelected = element.getElementsByClassName("monthselect")[0];
if (monthSelected != null) {
var month = (<HTMLInputElement>monthSelected).value;
var year = (<HTMLInputElement>element.getElementsByClassName("yearselect")[0]).value;
var isstartDateExist = element.getElementsByClassName("left")[0].querySelector(".start-date");
var isstartDateValid = element.getElementsByClassName("left")[0].querySelector(".off.start-date");
if ( isstartDateExist != null && isstartDateValid == null ) {
this.currentMonth = month;
this.currentYear = year;
}
if (month != this.currentMonth || year != this.currentYear) {
const date = String(parseInt(month)+1).padStart(2,'0')+'/01/'+year;
this.picker.setStartDate(date.toString());
this.picker.setEndDate(date.toString());
}
}
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)