一、lay-submitlay-filter是什么?
1、lay-submit,顾名思义,是提交事件的触发方法,我们在使用layui框架时,经常会使用到。
2、lay-filter,是lay-submit的配套使用方法,用于过滤不合法数据,同时也可以触发lay-submit的提交事件。
3、通俗点说,lay-submitlay-filter是一种方便用户输入信息校验的方法,适用于layui框架搭建的动态页面。
二、lay-submitlay-filter的优势
1、降低了前后端协作的成本,让前端能够自主完成表单数据的校验,减轻了后端工程师的负担。
2、提升用户体验,通过lay-filter的配置,能够实时对用户输入的数据进行校验及错误提示,有效避免非法数据的提交,提高用户使用体验。
三、lay-submitlay-filter实例演示
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>lay-submitlay-filter实例演示</title> <link rel="stylesheet" href="../src/layui/css/layui.css"> </head> <body> <div class="layui-row"> <div class="layui-col-md6"> <form method="post" class="layui-form" action=""> <div class="layui-form-item"> <label class="layui-form-label">账号</label> <div class="layui-input-block"> <input type="text" name="username" required lay-verify="required" placeholder="请输入账号" autocomplete="off" class="layui-input"> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">密码</label> <div class="layui-input-block"> <input type="password" name="password" required lay-verify="required" placeholder="请输入密码" autocomplete="off" class="layui-input"> </div> </div> <div class="layui-form-item"> <div class="layui-input-block"> <button class="layui-btn" lay-submit lay-filter="login">登录</button> <button type="reset" class="layui-btn layui-btn-primary">重置</button> </div> </div> </form> </div> </div> <script src="../src/layui/layui.js" charset="utf-8"></script> <script> //Demo layui.use(['form', 'jquery'], function(){ var form = layui.form, $ = layui.jquery; //监听提交 form.on('submit(login)', function(data){ layer.alert(JSON.stringify(data.field), { title: '最终的提交信息' }) return false; }); }); </script> </body> </html>
四、代码分析
首先需要加载layui框架的依赖文件,然后通过form对象的on方法监听匹配的lay-filter属性值。其中,注意到lay-verify属性值为required,表示必填项,当用户没有输入或输入不符合规格时,会弹出提示框提示用户重新输入。
on方法的回调函数中,使用layer.alert方法将用户输入的数据反馈给用户。在代码最后,layui.use方法中加载了jquery和form模块。
五、总结
通过以上分析,我们可以看出lay-submitlay-filter在layui框架中的重要作用。通过对用户输入数据的快速校验,大大提高了用户的体验感,同时减轻后端工程师处理表单数据的负担,实现了前后端交互的良好配合。
原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/247528.html