BootStrap+Mybatis框架下实现表单提交数据重复验证


Posted in Javascript onMarch 23, 2017

效果:

BootStrap+Mybatis框架下实现表单提交数据重复验证

BootStrap+Mybatis框架下实现表单提交数据重复验证

jsp页面:

<form class="form-horizontal lui-tj-bd" id="dbc_code_add_form" method="post">
<div class="row">
<div class="col-xs-12">
<!-- PAGE CONTENT BEGINS -->
<div class="tabbable">
<div class="space-12"></div>
<div class="profile-user-info profile-user-info-striped">
<div class="profile-info-row">
<div class="profile-info-name" > 版本号<font color="red">*</font></div>
<div class="profile-info-value">
<input type="hidden" value="${list.id}" name="id" class="col-xs-12 col-sm-9" />
<input type="hidden" value="${list.versionCode}" id="oldversionCode" name="oldversionCode" class="col-xs-12 col-sm-9" />
<input type="text" value="${list.versionCode}" id="versionCode" name="versionCode" class="col-xs-12 col-sm-9" />
</div>
</div>
<div class="profile-info-row">
<div class="profile-info-name" > 版本名称<font color="red">*</font></div>
<div class="profile-info-value">
<input type="hidden" value="${list.versionName}" id="oldversionName" name="oldversionName" class="col-xs-12 col-sm-9" />
<input type="text" value="${list.versionName}" id="versionName" name="versionName" class="col-xs-12 col-sm-9"/>
</div>
</div>
<div class="profile-info-row">
<div class="profile-info-name" > 上传应用程序<font color="red">*</font></div>
<div class="profile-info-value">
<input type="file" name="file_upload" id="file_upload" />
</div>
</div>
<div class="profile-info-row ">
<div class="profile-info-name"> 下载地址<font color="red">*</font> </div>
<div class="profile-info-value">
<span class="editable editable-click">
<input type="text" id="downloadUrl" name="downloadUrl" class="col-xs-12 col-sm-9" readonly="readonly" value="${list.downloadUrl}" />
</span>
</div>
</div>
<div class="profile-info-row">
<div class="profile-info-name" > 更新备注<font color="red">*</font></div>
<div class="profile-info-value">
<textarea class="col-sm-9 col-xs-12 " rows="5" id="updateLog" name="updateLog" >${list.updateLog}</textarea>
</div>
</div>
</div>
<div class="space-24"></div>
<div>
<div class=" col-md-offset-2 col-md-9 col-xs-12">
<div class=" col-xs-6">
<button class="btn btn-sm btn-success" type="button" id="saveButton2" style="float:right;" onclick="tobaocun()">
<i class="ace-icon fa fa-check "></i>保存
</button>
</div>
<button class="btn btn-sm btn-purple" type="reset">
<i class="ace-icon fa fa-undo "></i> 重置
</button>
</div>
</div>
</div>
</div>
</div>
</form>

js:

ace.load_ajax_scripts(scripts, function () {
 jQuery(function ($) {
 //验证
  $("#dbc_code_add_form").validate({
 rules: {
 'versionCode': {
 required: true,
 maxlength:20,
  remote:{
 type:"post",
 dataType:"json",
 data:{versionCode:function () { return $("#versionCode").val();},
 oldversionCode:function () { return $("#oldversionCode").val();}
 },
 url:"${base}/admin/road/app/validateversionCode.do"
   }
 },
 'versionName': {
 required: true,
 maxlength:40,
 remote:{
 type:"post",
 dataType:"json",
 data:{versionName:function () { return $("#versionName").val();},
 oldversionName:function () { return $("#oldversionName").val();}
 },
 url:"${base}/admin/road/app/validateversionName.do"
   }
 },
 'updateLog': {
 required: true,
 maxlength:125
 }
 },
 messages:{
 'versionCode':{
 required: "<font color='#d16e6c'>必填</font>",
 remote:"<font color='#d16e6c'>版本号重复</font>",
 maxlength:"<font color='#d16e6c'>最大不能超过10位</font>"
 },
 'versionName':{
 required: "<font color='#d16e6c'>必填</font>",
 remote:"<font color='#d16e6c'>版本名称重复</font>",
 maxlength:"<font color='#d16e6c'>最大不能超过40位</font>"
 },
 'updateLog':{
 required: "<font color='#d16e6c'>必填</font>",
 maxlength:"<font color='#d16e6c'>最大不能超过120位</font>"
 }
 }
 });
 });
});

controller控制层:

@RequestMapping(value="/validateversionCode",method=RequestMethod.POST)
 @ResponseBody
 public boolean validateversionCode(@RequestParam("versionCode")String versionCode,
 @RequestParam("oldversionCode")String oldversionCode){
 if(!versionCode.equals(oldversionCode)||StringUtils.isEmpty(oldversionCode)){
 boolean isOk = appversionService.validateversionCode(versionCode);
 return isOk;
 }
 return true;
 }
@RequestMapping(value="/validateversionName",method=RequestMethod.POST)
 @ResponseBody
 public boolean validateversionName(@RequestParam("versionName")String versionName,
 @RequestParam("oldversionName")String oldversionName){
 if(!versionName.equals(oldversionName)||StringUtils.isEmpty(oldversionName)){
 boolean isOk = appversionService.validateversionName(versionName);
 return isOk;
 }
 return true;
 }

service服务层

@Override
public boolean validateversionCode(String versionCode){
int count = dbcAppVersionMapper.validateversionCode(versionCode);
return (count>0)?false:true;
}
@Override
public boolean validateversionName(String versionName){
int count = dbcAppVersionMapper.validateversionName(versionName);
return (count>0)?false:true;
}

dao 层

int validateversionCode(@Param("versionCode")String versionCode);
int validateversionName(@Param("versionName")String versionName);

mapper.xml

<!-- APP版本名称验证-->
 <select id="validateversionName" resultType="java.lang.Integer">
select 
count(id)
from dbc_app_version
where VERSION_NAME=#{versionName}
</select>
<!-- APP版本号验证-->
 <select id="validateversionCode" resultType="java.lang.Integer">
select 
count(id)
from dbc_app_version
where VERSION_CODE=#{versionCode}
</select>

关于bootstrap专题大家可以参考下:

以上所述是小编给大家介绍的BootStrap框架下实现表单提交数据重复验证,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
把textarea中字符串里含有的回车换行替换成&amp;lt;br&amp;gt;的javascript代码
Apr 20 Javascript
javascript 随机展示头像实现代码
Dec 06 Javascript
jQuery的Scrollify插件实现滑动到页面下一节点
Jul 05 Javascript
JavaScript事件详细讲解
Jun 27 Javascript
Angular.js 4.x中表单Template-Driven Forms详解
Apr 25 Javascript
详解express与koa中间件模式对比
Aug 07 Javascript
vue写一个组件
Apr 09 Javascript
详解小程序缓存插件(mrc)
Aug 17 Javascript
js 实现在2d平面上画8的方法
Oct 10 Javascript
JavaScript中.min.js和.js文件的区别讲解
Feb 13 Javascript
vuex 实现getter值赋值给vue组件里的data示例
Nov 05 Javascript
可拖拽组件slider.js使用方法详解
Dec 04 Javascript
jquery实现全选、全不选以及单选功能
Mar 23 #jQuery
jQuery插件FusionCharts实现的MSBar3D图效果示例【附demo源码】
Mar 23 #jQuery
纯jQuery实现前端分页功能
Mar 23 #jQuery
vue双向绑定简要分析
Mar 23 #Javascript
Javascript面试经典套路reduce函数查重
Mar 23 #Javascript
JQuery 进入页面默认给已赋值的复选框打钩
Mar 23 #jQuery
vue.js实现含搜索的多种复选框(附源码)
Mar 23 #Javascript
You might like
php过滤HTML标签、属性等正则表达式汇总
2014/09/22 PHP
PHP中使用Imagick操作PSD文件实例
2015/01/26 PHP
php使用Jpgraph绘制饼状图的方法
2015/06/10 PHP
php unicode编码和字符串互转的方法
2020/08/12 PHP
jQuery Flash/MP3/Video多媒体插件
2010/01/18 Javascript
js点击出现悬浮窗效果不使用JQuery插件
2014/01/20 Javascript
JavaScript中的原型链prototype介绍
2014/12/30 Javascript
JS给超链接加确认对话框的方法
2015/02/24 Javascript
jquery插件qrcode在线生成二维码
2015/04/26 Javascript
JavaScript操作选择对象的简单实例
2016/05/16 Javascript
jQuery获取file控件中图片的宽高与大小
2016/08/04 Javascript
js HTML5 Canvas绘制转盘抽奖
2020/09/13 Javascript
轻松掌握JavaScript策略模式
2016/08/25 Javascript
Bootstrap使用基础教程详解
2016/09/05 Javascript
JavaScript 控制字体大小设置的方法
2016/11/23 Javascript
详解js中==与===的区别
2017/01/08 Javascript
vuejs使用FormData实现ajax上传图片文件
2017/08/08 Javascript
webpack踩坑之路图片的路径与打包
2017/09/05 Javascript
AngularJS使用ui-route实现多层嵌套路由的示例
2018/01/10 Javascript
vue element项目引入icon图标的方法
2018/06/06 Javascript
CountUp.js实现数字滚动增值效果
2019/10/17 Javascript
[02:19]DOTA选手解说齐贺岁
2018/02/11 DOTA
python计算书页码的统计数字问题实例
2014/09/26 Python
python使用PyGame播放Midi和Mp3文件的方法
2015/04/24 Python
Python利用Beautiful Soup模块搜索内容详解
2017/03/29 Python
Django项目实战之用户头像上传与访问的示例
2018/04/21 Python
python运行时强制刷新缓冲区的方法
2019/01/14 Python
Pytorch环境搭建与基本语法
2020/06/03 Python
Python并发请求下限制QPS(每秒查询率)的实现代码
2020/06/05 Python
大专生的学习自我评价
2013/12/04 职场文书
理工类毕业自我鉴定
2014/02/20 职场文书
我们的节日春节活动方案
2014/08/22 职场文书
演讲比赛的活动方案
2014/08/28 职场文书
如何将JavaScript将数组转为树形结构
2021/06/02 Javascript
node.js如何自定义实现一个EventEmitter
2021/07/16 Javascript
如何解决flex文本溢出问题小结
2022/07/15 HTML / CSS