From 039e3bf30d3c4e8a6b0a6bbeaec14277b7239b8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B4=A4=E5=BF=83?= <3277200+sentsim@users.noreply.github.com> Date: Sun, 14 May 2023 12:38:21 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=20form=20=E5=86=85=E7=BD=AE?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C=E8=A7=84=E5=88=99=EF=BC=8C=E4=BB=85=E5=BD=93?= =?UTF-8?q?=E9=9D=9E=E7=A9=BA=E6=97=B6=E8=BF=9B=E8=A1=8C=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=EF=BC=8C=E9=81=BF=E5=85=8D=E5=BC=BA=E5=88=B6=E6=90=BA=E5=B8=A6?= =?UTF-8?q?=E5=BF=85=E5=A1=AB(`required`)=E7=9A=84=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E8=A7=84=E5=88=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/modules/form.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/modules/form.js b/src/modules/form.js index 6cc5ff14..41428288 100644 --- a/src/modules/form.js +++ b/src/modules/form.js @@ -35,7 +35,7 @@ layui.define(['lay', 'layer', 'util'], function(exports){ '链接格式不正确' ], number: function(value){ - if(!value || isNaN(value)) return '只能填写数字' + if(isNaN(value)) return '只能填写数字'; }, date: [ /^(\d{4})[-\/](\d{1}|0\d{1}|1[0-2])([-\/](\d{1}|0\d{1}|[1-2][0-9]|3[0-1]))*$/, @@ -861,7 +861,7 @@ 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 = othis.val(); + var value = $.trim(othis.val()); othis.removeClass(DANGER); // 移除警示样式 @@ -884,12 +884,13 @@ layui.define(['lay', 'layer', 'util'], function(exports){ errorText = errorText || rule[1]; + // 获取自定义必填项提示文本 if(thisVer === 'required'){ errorText = othis.attr('lay-reqtext') || errorText; } // 若为必填项或者非空命中校验,则阻止提交,弹出提示 - if(isTrue){ + if(isTrue && (thisVer === 'required' || (value && thisVer !== 'required'))){ // 提示层风格 if(verType === 'tips'){ layer.tips(errorText, function(){ @@ -904,7 +905,7 @@ layui.define(['lay', 'layer', 'util'], function(exports){ layer.alert(errorText, {title: '提示', shadeClose: true}); } // 若返回的为字符或数字,则自动弹出默认提示框;否则由 verify 方法中处理提示 - else if(/\bstring|number\b/.test(typeof errorText)){ + else if(/\b(string|number)\b/.test(typeof errorText)){ layer.msg(errorText, {icon: 5, shift: 6}); }