diff --git a/addons/web/static/src/js/views/form/form_renderer.js b/addons/web/static/src/js/views/form/form_renderer.js index c96a513ab03..3747699f45c 100644 --- a/addons/web/static/src/js/views/form/form_renderer.js +++ b/addons/web/static/src/js/views/form/form_renderer.js @@ -84,6 +84,9 @@ var FormRenderer = BasicRenderer.extend({ _.each(resetWidgets, function (widget) { self._setIDForLabel(widget, self.idsForLabels[widget.name]); }); + if (self.$('.o_field_invalid').length) { + self.canBeSaved(self.state.id); + } return resetWidgets; }); }, diff --git a/addons/web/static/tests/views/form_tests.js b/addons/web/static/tests/views/form_tests.js index e034b599077..646de772b4e 100644 --- a/addons/web/static/tests/views/form_tests.js +++ b/addons/web/static/tests/views/form_tests.js @@ -2273,7 +2273,6 @@ QUnit.module('Views', { "input should be tagged as invalid"); form.$('input').val("tralala").trigger('input'); - form.$buttons.find('.o_form_button_save').click(); assert.strictEqual(form.$('.o_field_invalid').length, 0, "nothing should be marked as invalid");