一、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
微信扫一扫
支付宝扫一扫