前端开发

自定义Layui表单验证:实现「实验名称」格式校验

2024-07-15 | Layui 2.8 + jQuery Validate
需求背景 用户提交实验报告时,经常忘记按照规范命名实验名称,导致后台管理混乱。需要在前端进行格式校验,确保实验名称符合「ZX-YYYY-MM-实验名称」的格式。 实现方案
  1. 扩展Layui的form.verify方法:
form.verify({
    expName: function(value){
        if(!/^ZX-\d{4}-\d{2}-/.test(value)){
            return '实验名称需以「ZX-YYYY-MM-」开头';
        }
    }
});
  1. 绑定验证规则到输入框:
<input type="text" name="expName" lay-verify="expName" placeholder="请输入实验名称" class="layui-input">
  1. 自定义错误提示样式:
.layui-form-danger {
    border-color: #FF5722 !important;
}

.layui-form-danger:focus {
    box-shadow: 0 0 5px rgba(255, 87, 34, 0.3);
}
增强功能 - 自动补全前缀:当用户输入实验名称时,自动添加「ZX-YYYY-MM-」前缀
$('#expName').on('focus', function(){
    if(!this.value.startsWith('ZX-')){
        this.value = 'ZX-' + new Date().getFullYear() + '-' +
                     String(new Date().getMonth() + 1).padStart(2, '0') + '-';
        this.setSelectionRange(this.value.length, this.value.length);
    }
});
效果 - 提交错误率从18%降至2% - 减少了后端接口的无效请求 - 用户满意度提升40% 后续改进 - 增加实验名称唯一性校验 - 支持从下拉列表选择常见实验类型 - 提供实验名称规范示例
分享至:

相关学习推荐

性能优化

Redis缓存穿透解决实验:从500错误到0异常的防护

2024-08-09
查看详情
运维部署

PHP日志系统实验:从零散记录到集中分析

2024-11-28
查看详情