diff --git a/changelog.md b/changelog.md index e83771b87..de60e2185 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,6 @@ # 更新日志 2.0(2021-01) +- 日期类型控件不操作下拉面板收起不发Confirm事件 - 日期类型控件全系列可设置是否显示动态日期 - 日期类型控件全系列可设置最大最小日期 - 调整了combo的popup显示位置计算逻辑 diff --git a/src/widget/dynamicdate/dynamicdate.combo.js b/src/widget/dynamicdate/dynamicdate.combo.js index b313f814f..4cda9f9b7 100644 --- a/src/widget/dynamicdate/dynamicdate.combo.js +++ b/src/widget/dynamicdate/dynamicdate.combo.js @@ -114,11 +114,11 @@ BI.DynamicDateCombo = BI.inherit(BI.Single, { }, { eventName: BI.DynamicDateTrigger.EVENT_CONFIRM, action: function () { - if (self.combo.isViewVisible()) { - return; - } var dateStore = self.storeTriggerValue; var dateObj = self.trigger.getKey(); + if (self.combo.isViewVisible() || BI.isEqual(dateObj, dateStore)) { + return; + } if (BI.isNotEmptyString(dateObj) && !BI.isEqual(dateObj, dateStore)) { self.storeValue = self.trigger.getValue(); self.setValue(self.trigger.getValue()); diff --git a/src/widget/dynamicdatetime/dynamicdatetime.combo.js b/src/widget/dynamicdatetime/dynamicdatetime.combo.js index f2b0f2c12..350a163c2 100644 --- a/src/widget/dynamicdatetime/dynamicdatetime.combo.js +++ b/src/widget/dynamicdatetime/dynamicdatetime.combo.js @@ -119,11 +119,11 @@ BI.DynamicDateTimeCombo = BI.inherit(BI.Single, { }, { eventName: BI.DynamicDateTimeTrigger.EVENT_CONFIRM, action: function () { - if (self.combo.isViewVisible()) { - return; - } var dateStore = self.storeTriggerValue; var dateObj = self.trigger.getKey(); + if (self.combo.isViewVisible() || BI.isEqual(dateObj, dateStore)) { + return; + } if (BI.isNotEmptyString(dateObj) && !BI.isEqual(dateObj, dateStore)) { self.storeValue = self.trigger.getValue(); self.setValue(self.trigger.getValue()); diff --git a/src/widget/yearmonth/combo.yearmonth.js b/src/widget/yearmonth/combo.yearmonth.js index 51d4f1c44..a4bb5571b 100644 --- a/src/widget/yearmonth/combo.yearmonth.js +++ b/src/widget/yearmonth/combo.yearmonth.js @@ -38,12 +38,11 @@ BI.DynamicYearMonthCombo = BI.inherit(BI.Single, { self.fireEvent(BI.DynamicYearMonthCombo.EVENT_VALID); }); this.trigger.on(BI.DynamicYearMonthTrigger.EVENT_CONFIRM, function () { - // 没看出来干啥的,先去掉 - // if (self.combo.isViewVisible()) { - // return; - // } var dateStore = self.storeTriggerValue; var dateObj = self.trigger.getKey(); + if (BI.isEqual(dateObj, dateStore)) { + return; + } if (BI.isNotEmptyString(dateObj) && !BI.isEqual(dateObj, dateStore)) { self.storeValue = self.trigger.getValue(); self.setValue(self.trigger.getValue()); diff --git a/src/widget/yearquarter/combo.yearquarter.js b/src/widget/yearquarter/combo.yearquarter.js index 8e599e22b..6a9f838b6 100644 --- a/src/widget/yearquarter/combo.yearquarter.js +++ b/src/widget/yearquarter/combo.yearquarter.js @@ -34,12 +34,11 @@ BI.DynamicYearQuarterCombo = BI.inherit(BI.Widget, { self.combo.isViewVisible() && self.combo.hideView(); }); this.trigger.on(BI.DynamicYearQuarterTrigger.EVENT_CONFIRM, function () { - // 没看出来干啥的,先去掉 - // if (self.combo.isViewVisible()) { - // return; - // } var dateStore = self.storeTriggerValue; var dateObj = self.trigger.getKey(); + if (BI.isEqual(dateObj, dateStore)) { + return; + } if (BI.isNotEmptyString(dateObj) && !BI.isEqual(dateObj, dateStore)) { self.storeValue = self.trigger.getValue(); self.setValue(self.trigger.getValue());