diff --git a/addons/website/static/src/snippets/s_website_form/000.js b/addons/website/static/src/snippets/s_website_form/000.js index 9411761857d..119d2a4f5cb 100644 --- a/addons/website/static/src/snippets/s_website_form/000.js +++ b/addons/website/static/src/snippets/s_website_form/000.js @@ -336,13 +336,21 @@ // force server date format usage for existing fields this.$el.find('.s_website_form_field:not(.s_website_form_custom)') .find('.s_website_form_date, .s_website_form_datetime').each(function () { + const inputEl = this.querySelector('input'); + + // Datetimepicker('viewDate') will return `new Date()` if the + // input is empty but we want to keep the empty value + if (!inputEl.value) { + return; + } + var date = $(this).datetimepicker('viewDate').clone().locale('en'); var format = 'YYYY-MM-DD'; if ($(this).hasClass('s_website_form_datetime')) { date = date.utc(); format = 'YYYY-MM-DD HH:mm:ss'; } - form_values[$(this).find('input').attr('name')] = date.format(format); + form_values[inputEl.getAttribute('name')] = date.format(format); }); if (this._recaptchaLoaded) {