From 0fc125a866b8e2d35491abe016b63011105c888b Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 14 Aug 2019 22:28:36 +0200 Subject: [PATCH] luci-base: cbi.js: save filled out but not added dynlist items on submit Fixes: #2938 Signed-off-by: Jo-Philipp Wich --- modules/luci-base/htdocs/luci-static/resources/cbi.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/luci-base/htdocs/luci-static/resources/cbi.js b/modules/luci-base/htdocs/luci-static/resources/cbi.js index 67ddc6af3..e203c63ff 100644 --- a/modules/luci-base/htdocs/luci-static/resources/cbi.js +++ b/modules/luci-base/htdocs/luci-static/resources/cbi.js @@ -1018,7 +1018,8 @@ function cbi_dynlist_init(dl, datatype, optional, choices) 'class': 'cbi-input-text', 'placeholder': dl.getAttribute('data-placeholder'), 'data-type': datatype, - 'data-optional': true + 'data-optional': true, + 'data-dynlist-add': true }))); if (choices) @@ -1045,6 +1046,11 @@ cbi_dynlist_init.prototype = CBIDynamicList; function cbi_validate_form(form, errmsg) { + var dynadd = form.querySelectorAll('input[data-dynlist-add="true"]'); + for (var i = 0; i < dynadd.length; i++) + if (dynadd[i].value != '') + dynadd[i].nextElementSibling.click(); + /* if triggered by a section removal or addition, don't validate */ if (form.cbi_state == 'add-section' || form.cbi_state == 'del-section') return true; -- 2.25.1