但凡是涉及到用户编辑信息然后保存的页面,都涉及到一个数据是否符合要求的检查,需要客服端和服务器端的校验的问题;
客服端的校验主要是为了提高用户体验,而服务器端的校验为了数据的合格性
该插件也为您支持到了表单验证,在需要验证的列的配置中加一项required:true 再生成表单元素前面的label的时候会自动在label前面生成一个*,用于提示 改列数据会进行校验
验证是使用了jquery validation,具体使用方式请参照jquery validation的api
代码如下(页面地址:https://github.com/xiexingen/Bootstrap-SmartForm/blob/master/demo/form5-Validation.html):
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>表单验证</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="../css/bootstrap.css"> <!--自定义站点样式--> <link rel="stylesheet" href="../css/site.css"> <script src="../lib/jquery.js"></script> <script src="../lib/jquery.validate.js"></script> <script src="../lib/bootstrap.js"></script> <!--工具方法--> <script src="../scripts/global.js"></script> <!--插件--> <script src="../scripts/plugin.js"></script> </head> <body> <div class="panel panel-default"> <div class="panel-heading"> <label>带验证的智能表单</label> <div class="pull-right"> <button id="btnSubmit" class="btn btn-primary btn-xs">提交表单</button> </div> </div> <div class="panel-body"> <form action="#" id="formContainer" class="form form-horizontal"></form> </div> </div> <div class="panel panel-default"> <div class="panel-heading"><label>介绍</label></div> <div class="panel-body"> <h3 class="lead">表单的验证</h3> <blockquote> <p>使用jquery validation验证,其他验证方法请参考jquery validation,自定义验证global.Fn.setDefaultValidator()方法在global.js文件中,改文件属于工具文件,里面定义了很多工具方法,包括表单序列化、日期格式化、数组判断、设置默认验证、显示消息、弹窗、初始化插件、初始化表单、文件下载、表单保存等</p> </blockquote> </div> </div> <script> $(function () { var eles=[ [ {label:{text:'自定义用户名:'},ele:{type:'text',name:'UserName',title:'用户名:',required:true}}, {ele:{type:'radio',name:'sex',title:'性别:',items:[{text:'男',value:1},{text:'女',value:2}]}}, {ele:{type:'checkbox', name:'plant',title:'使用平台:',items:[{text:'APP',value:'app'},{text:'web',value:'web'}]}} ], [ {ele:{type:'select',name:'province',title:'省份:',withNull:true,items:[{text:'广东',value:'GD'},{text:'湖南',value:'HN'}]}}, {ele:{pre:{text:'<input type="radio">'},type:'text',name:'displayName',title:'显示名称:'}}, {ele:{type:'search',title:'产品',id:'ProductName',required:true}} ], [ {ele:{type:'datetime',name:'FromeDate',title:'有效期:'}}, {ele:{type:'datetime',name:'ToDate',title:'~'}}, ] ]; //隐藏表单元素主要用于编辑时候后台可以区别开来 var hides = [{ id: 'primaryKey' }]; var bsForm = new BSForm({ eles: eles, hides: hides, autoLayout: '1,3' }).Render('formContainer',function(bf){ var model={primaryKey:1,UserName:'xxg',sex:1,plant:['app','web'],province:'GD',displayName:'TEST',ProductName:'笔记本',FromeDate:'2015-06-10',ToDate:'2015-08-08'}; bf.InitFormData(model); }); $("#btnSubmit").bind('click',function () { if (!$("#formContainer").valid()) { alert("验证没通过!"); } else{ var postData=bsForm.GetFormData(); alert("获取到的表达数据为:"+JSON.stringify(postData)); } }); //使用自定义配置的验证样式处理 global.Fn.setDefaultValidator(); //定义验证规则 $("#formContainer").validate({ rules:{ UserName:{ required:true, minlength:3, maxlength:10 }, ProductName:{required:true} } }); }); </script> </body></html>
代码中为UserName列配置了必填和长度验证,运行界面将UserName的值删除,提交表单可以看到效果:
效果图如下:
本文向大家介绍BootStrap 智能表单实战系列(二)BootStrap支持的类型简介,包括了BootStrap 智能表单实战系列(二)BootStrap支持的类型简介的使用技巧和注意事项,需要的朋友参考一下 什么是 Bootstrap? Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的。 历史 Bo
本文向大家介绍BootStrap智能表单实战系列(九)表单图片上传的支持,包括了BootStrap智能表单实战系列(九)表单图片上传的支持的使用技巧和注意事项,需要的朋友参考一下 什么是 Bootstrap? Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的。 历史 Bootstrap 是由 Twitt
本文向大家介绍BootStrap智能表单实战系列(八)表单配置json详解,包括了BootStrap智能表单实战系列(八)表单配置json详解的使用技巧和注意事项,需要的朋友参考一下 本章属于该系列的高级部分,将介绍表单中一些列的配置 1、config列的配置: 主要用于控制布局 :config:{autoLayout:true|'1,2,2,4'} true:根据配置项最里层的数量来自动使用不
本文向大家介绍BootStrap智能表单实战系列(三)分块表单配置详解,包括了BootStrap智能表单实战系列(三)分块表单配置详解的使用技巧和注意事项,需要的朋友参考一下 什么是 Bootstrap? Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的。 历史 Bootstrap 是由 Twitter
本文向大家介绍BootStrap智能表单实战系列(六)表单编辑页面的数据绑定,包括了BootStrap智能表单实战系列(六)表单编辑页面的数据绑定的使用技巧和注意事项,需要的朋友参考一下 什么是 Bootstrap? Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的。 历史 Bootstrap 是由 T
本文向大家介绍使用JQuery实现智能表单验证功能,包括了使用JQuery实现智能表单验证功能的使用技巧和注意事项,需要的朋友参考一下 先给大家展示下表单效果图,具体效果如下所示: 1.前台一开始用JQuery实现,先来上HTML标记: 2,然后是CSS代码: 3.编写JQUery代码前需要引入JQuery支持文件: 4.现在开始编写JQuery代码: 5,实现如下效果: 我没有实现后台JQuer