簡單驗證複選框,單選框必填
例子代碼:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>layui</title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="//res.layui.com/layui/dist/css/layui.css" media="all">
<!-- 注意:如果你直接複製所有代碼到本地,上述css路徑需要改成你本地的 -->
</head>
<body>
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 50px;">
<legend>初始賦值演示</legend>
</fieldset>
<form class="layui-form" action="" lay-filter="example">
<div class="layui-form-item">
<label class="layui-form-label">複選框</label>
<div class="layui-input-block">
<input type="checkbox" name="like" lay-skin="primary" lay-verify="otherReq" title="寫作">
<input type="checkbox" name="like" lay-skin="primary" lay-verify="otherReq" title="閱讀">
<input type="checkbox" name="like" lay-verify="otherReq" title="遊戲">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">單選框</label>
<div class="layui-input-block">
<input type="radio" name="sex" value="男" lay-verify="otherReq" title="男" >
<input type="radio" name="sex" value="女" lay-verify="otherReq" title="女">
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" lay-submit="" lay-filter="demo1">立即提交</button>
</div>
</div>
</form>
<script src="//res.layui.com/layui/dist/layui.js" charset="utf-8"></script>
<!-- 注意:如果你直接複製所有代碼到本地,上述js路徑需要改成你本地的 -->
<script>
layui.use(['form', 'layedit', 'laydate'], function(){
var form = layui.form
,layer = layui.layer
,layedit = layui.layedit
,laydate = layui.laydate;
//自定義驗證規則
form.verify({
otherReq: function(value,item){
var $ = layui.$;
var verifyName=$(item).attr('name')
, verifyType=$(item).attr('type')
,formElem=$(item).parents('.layui-form')//獲取當前所在的form元素,如果存在的話
,verifyElem=formElem.find('input[name='+verifyName+']')//獲取需要校驗的元素
,isTrue= verifyElem.is(':checked')//是否命中校驗
,focusElem = verifyElem.next().find('i.layui-icon');//焦點元素
if(!isTrue || !value){
//定位焦點
focusElem.css(verifyType=='radio'?{"color":"#FF5722"}:{"border-color":"#FF5722"});
//對非輸入框設置焦點
focusElem.first().attr("tabIndex","1").css("outline","0").blur(function() {
focusElem.css(verifyType=='radio'?{"color":""}:{"border-color":""});
}).focus();
return '必填項不能爲空';
}
}
});
//監聽提交
form.on('submit(demo1)', function(data){
layer.alert(JSON.stringify(data.field), {
title: '最終的提交信息'
})
return false;
});
});
</script>
</body>
</html>
注意:
所有單選和多選這裏都是要設置成一樣子:lay-verify="otherReq"
轉載:https://fly.layui.com/jie/49182/