mirror of https://github.com/layui/layui
laydate修复面板自动切换的一些问题
parent
a4db9ea267
commit
84f92c0a7e
|
@ -254,7 +254,7 @@
|
||||||
var state = that.calendarLinkage;
|
var state = that.calendarLinkage;
|
||||||
that.calendarLinkage = (options.range && (options.type === 'date' || options.type === 'datetime')) && that.startDate && that.endDate && that.startDate.year === that.endDate.year && that.startDate.month === that.endDate.month;
|
that.calendarLinkage = (options.range && (options.type === 'date' || options.type === 'datetime')) && that.startDate && that.endDate && that.startDate.year === that.endDate.year && that.startDate.month === that.endDate.month;
|
||||||
lay(that.elem)[that.calendarLinkage ? 'addClass' : 'removeClass']('layui-laydate-linkage');
|
lay(that.elem)[that.calendarLinkage ? 'addClass' : 'removeClass']('layui-laydate-linkage');
|
||||||
return that.calendarLinkage !== state; // 返回发生了变化
|
return that.calendarLinkage != state; // 返回发生了变化
|
||||||
};
|
};
|
||||||
|
|
||||||
//是否自动切换
|
//是否自动切换
|
||||||
|
@ -887,11 +887,6 @@
|
||||||
lay.each([options.dateTime, that.endDate], function(i, item){
|
lay.each([options.dateTime, that.endDate], function(i, item){
|
||||||
initDate(item, value[i], i);
|
initDate(item, value[i], i);
|
||||||
});
|
});
|
||||||
that.startDate = lay.extend({}, options.dateTime);
|
|
||||||
if (that.autoCalendarModel.auto) { // 自动日历模式
|
|
||||||
// 判断联动与否
|
|
||||||
that.autoCalendarModel()
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
initDate(dateTime, value);
|
initDate(dateTime, value);
|
||||||
}
|
}
|
||||||
|
@ -931,7 +926,6 @@
|
||||||
//校验日期有效数字
|
//校验日期有效数字
|
||||||
checkValid(dateTime);
|
checkValid(dateTime);
|
||||||
if(options.range) checkValid(that.endDate);
|
if(options.range) checkValid(that.endDate);
|
||||||
that.endState = !that.calendarLinkage || !!(that.startDate && that.endDate); // 初始化选中范围状态
|
|
||||||
|
|
||||||
//如果初始值格式错误,则纠正初始值
|
//如果初始值格式错误,则纠正初始值
|
||||||
if(error && value){
|
if(error && value){
|
||||||
|
@ -976,6 +970,10 @@
|
||||||
that.hint('value ' + lang.invalidDate + lang.formatError[1]);
|
that.hint('value ' + lang.invalidDate + lang.formatError[1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
that.startDate = that.startDate || lay.extend({}, options.dateTime);
|
||||||
|
that.endState = !that.calendarLinkage || !!(that.startDate && that.endDate); // 初始化选中范围状态
|
||||||
|
that.autoCalendarModel.auto && that.autoCalendarModel();
|
||||||
|
|
||||||
fn && fn();
|
fn && fn();
|
||||||
return that;
|
return that;
|
||||||
};
|
};
|
||||||
|
@ -1522,9 +1520,6 @@
|
||||||
start = start || options.dateTime;
|
start = start || options.dateTime;
|
||||||
end = end || that.endDate;
|
end = end || that.endDate;
|
||||||
isOut = that.newDate(start).getTime() > that.newDate(end).getTime();
|
isOut = that.newDate(start).getTime() > that.newDate(end).getTime();
|
||||||
if(that.calendarLinkage) {
|
|
||||||
isOut = !that.endState;
|
|
||||||
}
|
|
||||||
|
|
||||||
//如果不在有效日期内,直接禁用按钮,否则比较开始和结束日期
|
//如果不在有效日期内,直接禁用按钮,否则比较开始和结束日期
|
||||||
(that.limit({
|
(that.limit({
|
||||||
|
@ -1783,15 +1778,18 @@
|
||||||
if (that.endState && that.autoCalendarModel.auto) {
|
if (that.endState && that.autoCalendarModel.auto) {
|
||||||
isChange = that.autoCalendarModel();
|
isChange = that.autoCalendarModel();
|
||||||
}
|
}
|
||||||
if (that.endState && that.newDate(that.startDate) > that.newDate(that.endDate)) {
|
var isSameDate = that.startDate.year === that.endDate.year && that.startDate.month === that.endDate.month && that.startDate.date === that.endDate.date;
|
||||||
|
if (that.calendarLinkage && that.endState && that.newDate(that.startDate) > that.newDate(that.endDate)) {
|
||||||
// 判断是否反选
|
// 判断是否反选
|
||||||
var startDate = that.startDate;
|
var startDate = that.startDate;
|
||||||
that.startDate = lay.extend({}, that.endDate, that.startTime);
|
that.startDate = lay.extend({}, that.endDate, isSameDate ? {} : that.startTime);
|
||||||
options.dateTime = lay.extend({}, that.startDate);
|
options.dateTime = lay.extend({}, that.startDate);
|
||||||
that.endDate = lay.extend({}, startDate, that.endTime);
|
that.endDate = lay.extend({}, startDate, isSameDate ? {} : that.endTime);
|
||||||
// startDate = that.startTime;
|
isSameDate && ( // 如果是同一天并且出现了反选证明是时分秒出现开始时间大于结束时间的现象
|
||||||
// that.startTime = that.endTime;
|
startDate = that.startTime,
|
||||||
// that.endTime = startDate;
|
that.startTime = that.endTime,
|
||||||
|
that.endTime = startDate
|
||||||
|
)
|
||||||
}
|
}
|
||||||
isChange && (options.dateTime = lay.extend({}, that.startDate));
|
isChange && (options.dateTime = lay.extend({}, that.startDate));
|
||||||
that.calendar(null, that.calendarLinkage ? null : index, isChange || that.calendarLinkage ? 'init' : null).done(null, 'change');
|
that.calendar(null, that.calendarLinkage ? null : index, isChange || that.calendarLinkage ? 'init' : null).done(null, 'change');
|
||||||
|
|
Loading…
Reference in New Issue