這篇文章的表單驗證我只是隨便記錄下,望各位看官理解
1.排序 驗證
html代碼
<div class="layui-form-item"> <label class="layui-form-label">排序</label> <div class="layui-input-block"> <input type="number" name="sort" autocomplete="off" min="0" max="99999" lay-verify="sort" class="layui-input"> </div> </div>
type="number" 之后文本框的后面就出現如上圖那樣的效果,並且只能輸入數字和小數點
js代碼
layui.use([ "form", "layer" ], function() { var form = layui.form; var layer = layui.layer; //表單驗證 form.render();//這句一定要加,占坑 form.verify({ sort:[/^$|^[0-9]{0,5}$/, '只能是數字且范圍0~99999!']//這個就是上面的排序lay-verify="sort" ,remark: function (value){ if(value.length > 200){ return '長度大於200!請重新輸入'; } } }); });
2.金額 驗證
效果和排序一樣
<div class="layui-form-item"> <label class="layui-form-label">余額(元)</label> <div class="layui-input-block"> <input type="number" name="balance" id="balance" lay-verify="money" autocomplete="off" placeholder="單位:元" class="layui-input" > </div> </div>
layui.use([ "form", "layer", "laydate" ], function() { laydate = layui.laydate; form = layui.form; layer = layui.layer;// 表單驗證 form.render(); form.verify({ lenth50 : function(value) { if (value.length > 50) { return '長度大於50!請重新輸入'; } }, lenth400 : function(value) { if (value.length > 400) { return '長度大於400!請重新輸入'; } }, money : function(value) { if (value.length > 0) { var reg = /(^[0-9]([0-9]+)?(\.[0-9]+)$)|(^(0){1}$)|(^([0-9]+)?$)/; if (!reg.test(value)) { return '輸入格式有誤'; } } if (value.length > 50) { return '長度大於50!請重新輸入'; } } });
//下面這段代碼主要是用於強制清除當用戶輸入0開頭的數字,比如0000,02323,匹配到的話就為0
//如果要在layui里面 寫js事件之類的代碼就一定要放在use組件模塊里面,這是其中一個坑!
$('#balance').bind('input propertychange', function() {
var balance = $("#balance").val();
var zero = /^(0){2,}$|^(0)([0-9])?$/;
if (zero.test(balance)) {
$('#balance').val(0);
}
});
});
就醬