代码有点长,这段代码主要是在学习中layui的前端验证。初学者的代码如果有错误可以私聊我。如果觉得代码长可以看第二段代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="/static/layui-v2.6.8/layui/css/layui.css">
<script src="/static/layui-v2.6.8/layui/layui.js"></script>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>
</head>
<body>
<form class="layui-form" action="">
<div class="layui-form-item">
<label class="layui-form-label">类型</label>
<div class="layui-input-block" style="width: 500px;">
<select name="type" lay-verify="type">
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">标题</label>
<div class="layui-input-block">
<input type="text" name="title" lay-verify="title" autocomplete="off"
class="layui-input title">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">描述</label>
<div class="layui-input-block">
<input type="text" name="desct" 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="text" name="money_off" lay-verify="money_off" autocomplete="off"
class="layui-input money_off">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">优惠额</label>
<div class="layui-input-block">
<input type="text" name="subtract" lay-verify="subtract" autocomplete="off"
class="layui-input subtract">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">折扣</label>
<div class="layui-input-block">
<input type="text" name="discount" lay-verify="discount" autocomplete="off"
class="layui-input discount">
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="formDemo">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
</div>
</form>
<script>
//Demo
layui.use('form', function () {
var form = layui.form;
form.verify({
type:function (value){
if(value==1){
var title = $('.title').val()
var money_off = Number($('.money_off').val())
var subtract = Number($('.subtract').val())
console.log(money_off)
if(title.length==0){
return '标题不能为空';
}
if(money_off==0){
return '满减额不能为空';
}
if(String(money_off)=='NaN'){
return '满减额必须为整数或者小数';
}
if(subtract==0){
return '优惠额不能为空';
}
if(String(subtract)=='NaN'){
return '优惠额必须为整数或者小数';
}
}
if(value==2){
var title = $('.title').val()
var discount = Number($('.discount').val())
if(title.length==0){
return '标题不能为空';
}
if(String(discount)=='NaN'){
return '折扣必须为整数或者小数';
}
if(discount==0){
return '折扣不能为空';
}
}
if(value==3){
var title = $('.title').val()
var subtract = Number($('.subtract').val())
if(title.length==0){
return '标题不能为空';
}
if(subtract==0){
return '优惠额不能为空';
}
if(String(subtract)=='NaN'){
return '优惠额必须为整数或者小数';
}
}
if(value==4){
var title = $('.title').val()
var money_off = Number($('.money_off').val())
var discount = Number($('.discount').val())
if(title.length==0){
return '标题不能为空';
}
if(money_off==0){
return '满减额不能为空';
}
if(discount==0){
return '折扣不能为空';
}
if(String(money_off)=='NaN'){
return '满减额必须为整数或者小数';
}
if(String(discount)=='NaN'){
return '折扣必须为整数或者小数';
}
}
}
,content: function(value){
layedit.sync(editIndex);
}
});
//监听提交
form.on('submit(formDemo)', function (data) {
layer.msg(JSON.stringify(data.field));
return false;
});
});
</script>
</body>
</html>
<script>
$.ajax({
url: "{:url('admin/Type/index')}"
, type: "GET"
, success: function (res) {
console.log(res)
var data = res.data
var str = '<option value="">请选择</option>';
$(data).each(function (k, v) {
str += '<option value="' + v.id + '">' + v.t_name + '</option>'
})
console.log(str)
$('select').append(str)
layui.form.render("select");
}
})
</script>
关键性代码如下
<form class="layui-form" action="">
<div class="layui-form-item">
<label class="layui-form-label">类型</label>
<div class="layui-input-block" style="width: 500px;">
<select name="type" lay-verify="type">
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">标题</label>
<div class="layui-input-block">
<input type="text" name="title" lay-verify="title" autocomplete="off"
class="layui-input title">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">描述</label>
<div class="layui-input-block">
<input type="text" name="desct" 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="text" name="money_off" lay-verify="money_off" autocomplete="off"
class="layui-input money_off">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">优惠额</label>
<div class="layui-input-block">
<input type="text" name="subtract" lay-verify="subtract" autocomplete="off"
class="layui-input subtract">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">折扣</label>
<div class="layui-input-block">
<input type="text" name="discount" lay-verify="discount" autocomplete="off"
class="layui-input discount">
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="formDemo">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
</div>
</form>
<script>
//Demo
layui.use('form', function () {
var form = layui.form;
form.verify({
type:function (value){
if(value==1){
var title = $('.title').val()
var money_off = Number($('.money_off').val())
var subtract = Number($('.subtract').val())
console.log(money_off)
if(title.length==0){
return '标题不能为空';
}
if(money_off==0){
return '满减额不能为空';
}
if(String(money_off)=='NaN'){
return '满减额必须为整数或者小数';
}
if(subtract==0){
return '优惠额不能为空';
}
if(String(subtract)=='NaN'){
return '优惠额必须为整数或者小数';
}
}
if(value==2){
var title = $('.title').val()
var discount = Number($('.discount').val())
if(title.length==0){
return '标题不能为空';
}
if(String(discount)=='NaN'){
return '折扣必须为整数或者小数';
}
if(discount==0){
return '折扣不能为空';
}
}
if(value==3){
var title = $('.title').val()
var subtract = Number($('.subtract').val())
if(title.length==0){
return '标题不能为空';
}
if(subtract==0){
return '优惠额不能为空';
}
if(String(subtract)=='NaN'){
return '优惠额必须为整数或者小数';
}
}
if(value==4){
var title = $('.title').val()
var money_off = Number($('.money_off').val())
var discount = Number($('.discount').val())
if(title.length==0){
return '标题不能为空';
}
if(money_off==0){
return '满减额不能为空';
}
if(discount==0){
return '折扣不能为空';
}
if(String(money_off)=='NaN'){
return '满减额必须为整数或者小数';
}
if(String(discount)=='NaN'){
return '折扣必须为整数或者小数';
}
}
}
,content: function(value){
layedit.sync(editIndex);
}
});
//监听提交
form.on('submit(formDemo)', function (data) {
layer.msg(JSON.stringify(data.field));
return false;
});
});
</script>
主要的代码实现如下
//表单中的lay-verify="type"属性必须有
//下面这段代码主要是对值进行判断。
layui.use('form', function () {
var form = layui.form;
form.verify({
type:function (value){
if(value==1){
var title = $('.title').val()
var money_off = Number($('.money_off').val())
var subtract = Number($('.subtract').val())
console.log(money_off)
if(title.length==0){
return '标题不能为空';
}
if(money_off==0){
return '满减额不能为空';
}
if(String(money_off)=='NaN'){
return '满减额必须为整数或者小数';
}
if(subtract==0){
return '优惠额不能为空';
}
if(String(subtract)=='NaN'){
return '优惠额必须为整数或者小数';
}
}
if(value==2){
var title = $('.title').val()
var discount = Number($('.discount').val())
if(title.length==0){
return '标题不能为空';
}
if(String(discount)=='NaN'){
return '折扣必须为整数或者小数';
}
if(discount==0){
return '折扣不能为空';
}
}
if(value==3){
var title = $('.title').val()
var subtract = Number($('.subtract').val())
if(title.length==0){
return '标题不能为空';
}
if(subtract==0){
return '优惠额不能为空';
}
if(String(subtract)=='NaN'){
return '优惠额必须为整数或者小数';
}
}
if(value==4){
var title = $('.title').val()
var money_off = Number($('.money_off').val())
var discount = Number($('.discount').val())
if(title.length==0){
return '标题不能为空';
}
if(money_off==0){
return '满减额不能为空';
}
if(discount==0){
return '折扣不能为空';
}
if(String(money_off)=='NaN'){
return '满减额必须为整数或者小数';
}
if(String(discount)=='NaN'){
return '折扣必须为整数或者小数';
}
}
}
,content: function(value){
layedit.sync(editIndex);
}
});
//下面这段为提交代码。如果使用请参考文章第一段代码
form.on('submit(formDemo)', function (data) {
layer.msg(JSON.stringify(data.field));
return false;
});