From d833771d776dce2bfe8d952129f79837fed3af5b Mon Sep 17 00:00:00 2001 From: morning-star <26325820+Sight-wcg@users.noreply.github.com> Date: Wed, 25 Dec 2024 16:42:58 +0800 Subject: [PATCH] =?UTF-8?q?fix(form):=20form.val=20=E8=8E=B7=E5=8F=96=20mu?= =?UTF-8?q?ltiple=20select=20=E5=80=BC=E9=94=99=E8=AF=AF=20(#2425)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(form): form.val 获取 multiple select 值错误 * fix(form): 表单验证时非字符串值不应规范化 * update --- src/modules/form.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/modules/form.js b/src/modules/form.js index be928177..0831bd7a 100644 --- a/src/modules/form.js +++ b/src/modules/form.js @@ -24,7 +24,7 @@ layui.define(['lay', 'layer', 'util'], function(exports){ // 内置的验证规则 verify: { required: function(value) { - if (!/[\S]+/.test(value)) { + if (!/[\S]+/.test(value) || value === undefined || value === null) { return '必填项不能为空'; } }, @@ -154,7 +154,7 @@ layui.define(['lay', 'layer', 'util'], function(exports){ } if(/^(checkbox|radio)$/.test(item.type) && !item.checked) return; // 复选框和单选框未选中,不记录字段 - field[init_name || item.name] = item.value; + field[init_name || item.name] = othis.val(); }); return field; @@ -1148,7 +1148,8 @@ layui.define(['lay', 'layer', 'util'], function(exports){ var verifyStr = othis.attr('lay-verify') || ''; var vers = verifyStr.split('|'); var verType = othis.attr('lay-vertype'); // 提示方式 - var value = $.trim(othis.val()); + var value = othis.val(); + value = typeof value === 'string' ? $.trim(value) : value; othis.removeClass(DANGER); // 移除警示样式