diff --git a/dist/2.0/fineui.ie.js b/dist/2.0/fineui.ie.js index ae47cdd93..62aeb17b9 100644 --- a/dist/2.0/fineui.ie.js +++ b/dist/2.0/fineui.ie.js @@ -77562,11 +77562,15 @@ BI.NumberEditor = BI.inherit(BI.Widget, { errorText: o.errorText }); this.editor.on(BI.TextEditor.EVENT_CHANGE, function () { - o.value = BI.parseFloat(this.getValue()); self.fireEvent(BI.NumberEditor.EVENT_CHANGE); }); - this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { + this.editor.on(BI.TextEditor.EVENT_ERROR, function () { + o.value = BI.parseFloat(this.getLastValidValue()); + }); + this.editor.on(BI.TextEditor.EVENT_VALID, function () { o.value = BI.parseFloat(this.getValue()); + }); + this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { self.fireEvent(BI.NumberEditor.EVENT_CONFIRM); }); this.topBtn = BI.createWidget({ diff --git a/dist/2.0/fineui.js b/dist/2.0/fineui.js index 4a36be644..1eb9d3179 100644 --- a/dist/2.0/fineui.js +++ b/dist/2.0/fineui.js @@ -77966,11 +77966,15 @@ BI.NumberEditor = BI.inherit(BI.Widget, { errorText: o.errorText }); this.editor.on(BI.TextEditor.EVENT_CHANGE, function () { - o.value = BI.parseFloat(this.getValue()); self.fireEvent(BI.NumberEditor.EVENT_CHANGE); }); - this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { + this.editor.on(BI.TextEditor.EVENT_ERROR, function () { + o.value = BI.parseFloat(this.getLastValidValue()); + }); + this.editor.on(BI.TextEditor.EVENT_VALID, function () { o.value = BI.parseFloat(this.getValue()); + }); + this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { self.fireEvent(BI.NumberEditor.EVENT_CONFIRM); }); this.topBtn = BI.createWidget({ diff --git a/dist/bundle.ie.js b/dist/bundle.ie.js index ae47cdd93..62aeb17b9 100644 --- a/dist/bundle.ie.js +++ b/dist/bundle.ie.js @@ -77562,11 +77562,15 @@ BI.NumberEditor = BI.inherit(BI.Widget, { errorText: o.errorText }); this.editor.on(BI.TextEditor.EVENT_CHANGE, function () { - o.value = BI.parseFloat(this.getValue()); self.fireEvent(BI.NumberEditor.EVENT_CHANGE); }); - this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { + this.editor.on(BI.TextEditor.EVENT_ERROR, function () { + o.value = BI.parseFloat(this.getLastValidValue()); + }); + this.editor.on(BI.TextEditor.EVENT_VALID, function () { o.value = BI.parseFloat(this.getValue()); + }); + this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { self.fireEvent(BI.NumberEditor.EVENT_CONFIRM); }); this.topBtn = BI.createWidget({ diff --git a/dist/bundle.js b/dist/bundle.js index 4a36be644..1eb9d3179 100644 --- a/dist/bundle.js +++ b/dist/bundle.js @@ -77966,11 +77966,15 @@ BI.NumberEditor = BI.inherit(BI.Widget, { errorText: o.errorText }); this.editor.on(BI.TextEditor.EVENT_CHANGE, function () { - o.value = BI.parseFloat(this.getValue()); self.fireEvent(BI.NumberEditor.EVENT_CHANGE); }); - this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { + this.editor.on(BI.TextEditor.EVENT_ERROR, function () { + o.value = BI.parseFloat(this.getLastValidValue()); + }); + this.editor.on(BI.TextEditor.EVENT_VALID, function () { o.value = BI.parseFloat(this.getValue()); + }); + this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { self.fireEvent(BI.NumberEditor.EVENT_CONFIRM); }); this.topBtn = BI.createWidget({ diff --git a/dist/fineui.ie.js b/dist/fineui.ie.js index c8b78856d..89955f22a 100644 --- a/dist/fineui.ie.js +++ b/dist/fineui.ie.js @@ -77807,11 +77807,15 @@ BI.NumberEditor = BI.inherit(BI.Widget, { errorText: o.errorText }); this.editor.on(BI.TextEditor.EVENT_CHANGE, function () { - o.value = BI.parseFloat(this.getValue()); self.fireEvent(BI.NumberEditor.EVENT_CHANGE); }); - this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { + this.editor.on(BI.TextEditor.EVENT_ERROR, function () { + o.value = BI.parseFloat(this.getLastValidValue()); + }); + this.editor.on(BI.TextEditor.EVENT_VALID, function () { o.value = BI.parseFloat(this.getValue()); + }); + this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { self.fireEvent(BI.NumberEditor.EVENT_CONFIRM); }); this.topBtn = BI.createWidget({ diff --git a/dist/fineui.js b/dist/fineui.js index dacf70fdd..770ed980d 100644 --- a/dist/fineui.js +++ b/dist/fineui.js @@ -78211,11 +78211,15 @@ BI.NumberEditor = BI.inherit(BI.Widget, { errorText: o.errorText }); this.editor.on(BI.TextEditor.EVENT_CHANGE, function () { - o.value = BI.parseFloat(this.getValue()); self.fireEvent(BI.NumberEditor.EVENT_CHANGE); }); - this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { + this.editor.on(BI.TextEditor.EVENT_ERROR, function () { + o.value = BI.parseFloat(this.getLastValidValue()); + }); + this.editor.on(BI.TextEditor.EVENT_VALID, function () { o.value = BI.parseFloat(this.getValue()); + }); + this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { self.fireEvent(BI.NumberEditor.EVENT_CONFIRM); }); this.topBtn = BI.createWidget({ diff --git a/dist/fineui_without_jquery_polyfill.js b/dist/fineui_without_jquery_polyfill.js index f03a21d0a..8e6be969d 100644 --- a/dist/fineui_without_jquery_polyfill.js +++ b/dist/fineui_without_jquery_polyfill.js @@ -60510,11 +60510,15 @@ BI.NumberEditor = BI.inherit(BI.Widget, { errorText: o.errorText }); this.editor.on(BI.TextEditor.EVENT_CHANGE, function () { - o.value = BI.parseFloat(this.getValue()); self.fireEvent(BI.NumberEditor.EVENT_CHANGE); }); - this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { + this.editor.on(BI.TextEditor.EVENT_ERROR, function () { + o.value = BI.parseFloat(this.getLastValidValue()); + }); + this.editor.on(BI.TextEditor.EVENT_VALID, function () { o.value = BI.parseFloat(this.getValue()); + }); + this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { self.fireEvent(BI.NumberEditor.EVENT_CONFIRM); }); this.topBtn = BI.createWidget({ diff --git a/dist/widget.js b/dist/widget.js index 70e9d3980..637a78e70 100644 --- a/dist/widget.js +++ b/dist/widget.js @@ -15621,11 +15621,15 @@ BI.NumberEditor = BI.inherit(BI.Widget, { errorText: o.errorText }); this.editor.on(BI.TextEditor.EVENT_CHANGE, function () { - o.value = BI.parseFloat(this.getValue()); self.fireEvent(BI.NumberEditor.EVENT_CHANGE); }); - this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { + this.editor.on(BI.TextEditor.EVENT_ERROR, function () { + o.value = BI.parseFloat(this.getLastValidValue()); + }); + this.editor.on(BI.TextEditor.EVENT_VALID, function () { o.value = BI.parseFloat(this.getValue()); + }); + this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { self.fireEvent(BI.NumberEditor.EVENT_CONFIRM); }); this.topBtn = BI.createWidget({ diff --git a/src/widget/datetimepane/__test__/datetimepane.test.js b/src/widget/datetimepane/__test__/datetimepane.test.js index 5faf7c84b..69e076578 100644 --- a/src/widget/datetimepane/__test__/datetimepane.test.js +++ b/src/widget/datetimepane/__test__/datetimepane.test.js @@ -102,14 +102,14 @@ describe("DateTimePane", function () { datePane.element.find(".bi-month-combo .bi-list-item-select").get(2).click(); BI.nextTick(function () { datePane.element.find(".bi-calendar:visible .bi-list-item-select :contains(27)").parent().click(); - datePane.element.find(".bi-date-time-select .bi-number-editor .top-button").click(); + datePane.element.find(".bi-date-time-select .bi-number-editor .top-button").get(0).click(); expect(datePane.getValue()).to.deep.equal({ type: 1, value: { year: 2019, month: 2, day: 27, - hour: 0, + hour: 1, minute: 0, second: 0 } diff --git a/src/widget/numbereditor/number.editor.js b/src/widget/numbereditor/number.editor.js index 9a2a17629..05292867d 100644 --- a/src/widget/numbereditor/number.editor.js +++ b/src/widget/numbereditor/number.editor.js @@ -31,11 +31,15 @@ BI.NumberEditor = BI.inherit(BI.Widget, { errorText: o.errorText }); this.editor.on(BI.TextEditor.EVENT_CHANGE, function () { - o.value = BI.parseFloat(this.getValue()); self.fireEvent(BI.NumberEditor.EVENT_CHANGE); }); - this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { + this.editor.on(BI.TextEditor.EVENT_ERROR, function () { + o.value = BI.parseFloat(this.getLastValidValue()); + }); + this.editor.on(BI.TextEditor.EVENT_VALID, function () { o.value = BI.parseFloat(this.getValue()); + }); + this.editor.on(BI.TextEditor.EVENT_CONFIRM, function () { self.fireEvent(BI.NumberEditor.EVENT_CONFIRM); }); this.topBtn = BI.createWidget({