From 46765ae659e280500e7b872d531db5c2d9509bd9 Mon Sep 17 00:00:00 2001 From: yflory Date: Fri, 5 Nov 2021 15:10:16 +0100 Subject: [PATCH] Fix form issues when changing question type --- www/form/inner.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/www/form/inner.js b/www/form/inner.js index c3835f934..3d4124884 100644 --- a/www/form/inner.js +++ b/www/form/inner.js @@ -3670,16 +3670,25 @@ define([ } }); if (res === type || !TYPES[res]) { return; } + var oldOpts = model.defaultOpts || {}; model = TYPES[res]; + Object.keys(oldOpts).forEach(function (v) { + var opts = model.defaultOpts || {}; + if (!opts[v]) { delete (block.opts || {})[v]; } + }); type = res; if (!data) { data = {}; } block.type = res; + framework.localChange(); + var wasEditing = data.editing; + onSave(null, true); var $oldTag = $(data.tag); framework._.cpNfInner.chainpad.onSettle(function () { $(changeType).find('span').text(Messages['form_type_'+type]); data = model.get(block.opts, _answers, null, evOnChange); $oldTag.before(data.tag).remove(); + if (wasEditing) { $(edit).click(); } }); }); });