一、jquery引用

主要用到3个js:
jquery.js
jquery.form.js
jquery.validation.js
另外,为了校验结果提示本地化,还需要引入jquery.validate对应的mesage_zh.js。
这个几个文件的地址就不一一整理了,可以在官网上去下载,也可以在CathyCMS项目中拷贝。
 

二、html页面

权限管理的新增角色页面,不考虑资源树部分的话,这个页面的内容和交互比较简单,我们就以这个页面为例,看下怎么实现表单校验和异步提交。
 <form id="myForm" class="form-horizontal"  th:object="${role}">
<input type="hidden" th:field="*{roleId}">
<fieldset>
<div class="control-group">
<label class="control-label" for="name">角色名称</label>
<div class="controls">
<input type="text" class="input-xlarge" th:field="*{name}">
</div>
</div>
<div class="control-group">
<label class="control-label" for="description">角色描述</label>
<div class="controls">
<textarea class="input-xlarge" th:field="*{description}" rows="3"></textarea>
</div>
</div>
<div class="control-group">
<label class="control-label" for="select01">Client</label>
<div class="controls">
<select id="select01">
<option>-- Select client --</option>
<option>Bad Robot</option>
<option>Evil Genius</option>
<option>Monsters Inc</option>
</select>
</div>
</div>
<div class="form-actions">
<button type="submit" class="btn btn-primary">保存</button>
<button class="btn">返回列表</button>
</div>
</fieldset>
</form>

  

三、表单校验部分脚本

这个页面要求角色名称必填,如果校验不合格在当前页面给出提示;如果校验合格就提交ajax请求。
 
<script type="text/javascript">
$.validator.setDefaults({
submitHandler: function(form) {
$(form).ajaxSubmit({
url:"[[@{/role/save}]]",
type:"post",
dataType:"json",
success:function(json){
if(json!=null&&json.returncode==0){
window.location.href="[[@{/role/list}]]";
}else{
alert("保存失败");
}
}
});
}
}); $().ready(function () {
$("#myForm").validate({
rules: {
name: "required"
},
messages: {
name: "请输入角色名称"
}
});
});
</script>

  

四、后台action

@RequestMapping("/save")
@ResponseBody
public JsonResult save(CmsRole role){
JsonResult jsonResult=new JsonResult(){{
setReturncode(-1);
setMessage("保存失败");
}}; int result;
if(role.getRoleId()==null||role.getRoleId()==0){
result=roleService.insert(role);
}else{
result=roleService.update(role);
} if(result>0){
jsonResult.setReturncode(0);
jsonResult.setMessage("保存成功");
} return jsonResult;
}

 

 
 

jquery.form.js+jquery.validation.js实现表单校验和提交的更多相关文章

  1. 使用jQuery.form插件,实现完美的表单异步提交

    传送门:异步编程系列目录…… 时间真快,转眼一个月快结束了,一个月没写博客了!手开始生了,怎么开始呢…… 示例下载:使用jQuery.form插件,实现完美的表单异步提交.rar 月份的尾巴,今天的主 ...

  2. JQuery插件使用之Validation 快速完成表单验证的几种方式

    JQuery的Validation插件可以到http://plugins.jquery.com/上去下载.今天来分享一下,关于这个插件的使用. 简易使用 这第一种方式可谓是傻瓜式的使用,我们只需要按照 ...

  3. js的作用是临时修改 表单Action提交的地址,因为 又有新的动作需要把表单参数提交到 新的servlet中,这点很重要

    JavaScript可以临时修稿 form表单的提交地址

  4. jquery.form.js 使用以及问题(表单异步提交)

    标注:我引用的js后报错 原因:是引用的js有冲突 我引用了两便jQuery: 转载:https://blog.csdn.net/cplvfx/article/details/80455485 使用方 ...

  5. 使用jQuery,实现完美的表单异步提交

    jQuery异步提交表单 <form id="form1" method="post"> <table border="1" ...

  6. jQuery---jq基础了解(语法,特性),JQ和JS的区别对比,JQ和JS相互转换,Jquery的选择器(基础选择器,层级选择器,属性选择器),Jquery的筛选器(基本筛选器,表单筛选器),Jquery筛选方法

    jQuery---jq基础了解(语法,特性),JQ和JS的区别对比,JQ和JS相互转换,Jquery的选择器(基础选择器,层级选择器,属性选择器),Jquery的筛选器(基本筛选器,表单筛选器),Jq ...

  7. jQuery常用插件与jQuery使用validation插件实现表单验证实例

    jQuery常用插件 1,jQuery特别容易扩展,开发者可以基于jQuery开发一些扩展动能 2,插件:http://plugins.jquery.com 3,超厉害的插件:validation . ...

  8. jQuery的validation插件(验证表单插件)

    更完整的参考:http://www.runoob.com/jquery/jquery-plugin-validate.html 验证隐藏字段的使用(验证通过后ajax提交表单):http://www. ...

  9. js阻止form表单重复提交

    防止表单重复提交的方法总体来说有两种,一种是在js中阻止重复提交:另一种是在后台利用token令牌实现,大致思路是生成一个随机码放到session和form表单的隐藏输入框中,提交表单时两者对比,表单 ...

随机推荐

  1. 吾八哥学Python(六):运算符与表达式

    上篇简单学习了数学运算符,今天来学习下完整的Python运算符与表达式,具体看下面的表格吧! 表1 运算符与它们的用法 运算符 名称 说明 例子 + 加 两个对象相加 3 + 5得到8.’a’ + ‘ ...

  2. CSS3选择器在HTML5中的使用

    1,有CLASS属性的input标记 Input[class]{ } 2,class属性是sm的元素 Input[class='sm']{} 3,  凡是class=sm的元素 [class='sm' ...

  3. zabbix杂文二

    ps1:主要是一些遇到的问题,不一定对所有人都有用... PS2:安装前就一定要去看下官方文档 PS3:安装zabbix的时候会参照这上面的 http://blog.chinaunix.net/uid ...

  4. 2年Java开发工作经验面试总结

    最近换了个公司,从三月底开始面,面到四月底,面了有快二十家公司.我是一个喜欢总结经验的人,每经过一场面试,我在回来的路上都会仔细回想今天哪些问题可以答的更好,或者哪些问题是自己之前没遇到过的,或者是哪 ...

  5. Thrift - 快速入门

    简单实例 有homebrew的话,直接执行以下命令即可,brew会处理相关依赖(https://thrift.apache.org/docs/install/). brew install thrif ...

  6. [JAVA第二课] java命名规则

    Java良好的命名规则以及代码风格可以看出来一个程序员的功底,好多公司也会注重这方面,他们招聘员工在有些时候往往就是根据一个人的代码风格来招人,所以下面就就我知道的代码风格作简要的说明一下.Java命 ...

  7. PHP设计模式一:工厂方法设计模式

    一.什么是工厂方法模式 作为一种创建型设计模式,工厂方法模式就是要创建“某种东西”.对于工厂方法,要创建的“东西”是一个产品,这个产品与创建它的类之间不存在绑定. 实际上,为了保持这种松耦合,客户会通 ...

  8. Java基础笔记8

    Object类 Object类是所有类的父类. 如果某个类没有显示的继承某个父类,那么该类则继承Object. 类 Object 是类层次结构的根类.每个类都使用 Object 作为超类. 所有对象( ...

  9. How to change your password of your mysql account in WampServer

    #1. use phpmyadmin to login mysql and click the account menu, and then click "Change the passwo ...

  10. Python学习之一:Python2.7与opencv2.4安装配置

    安装前准备: 1.确定所安装的电脑是32位还是64位系统:(作者电脑是64bit win10) 2.下载对应的安装包: (1)下载最新Python安装包:https://www.python.org/ ...