jQuery中验证表单提交方式及序列化表单内容的实现


Posted in Javascript onJanuary 06, 2014

之前项目中使用的表单提交方式

使用form()方法可以将提交事件脱离submit按钮,绑定到任何事件中

function addSubmit(){ 
$('#addForm').form('submit', { 
url : _basePath + '/@Controller/@RequestMapping', 
onSubmit : function() { 
if(boolean){//放置能否提交的判断条件 
$.messager.show({ 
title:'提示',msg:'不符合保存条件', 
showType:'fade',style:{right:'',bottom:''} 
}); 
return false;//阻止表单提交 
} 
return $('#addForm').form('validate');//判断required项是否全部有值 
}, 
success : function(data) { 
var obj = jQuery.parseJSON(data);//将返回的JSON转化为所需对象(ResponseData) 
if (!obj.success) {//判断返回的ResponseData对象中标示状态的属性值 
$.messager.show({ 
title:'提示',msg:'保存失败', 
showType:'fade',style:{right:'',bottom:''} 
}); 
} else { 
$.messager.show({ 
title:'提示',msg:'保存成功', 
showType:'fade',style:{right:'',bottom:''} 
}); 
$("#addWin").window("close");//关闭提交pwkk 
query();//刷新结果集 
} 
} 
}); 
}

今天在《锋利的jQuery》中又读到这样一种提交方式,使用ajax封装了表单内容用post提交
$("#btn").click(function() { 
$.get("get.php", {username:$("#username").val(), password:$("#password").val()}, function(data, textStatus) {//将表单中的数据逐条取出后封装上传 
$("#target").html(data);//将返回值填充至页面中 
}); 
});

而后有一个简化版,使用serialize()方法序列化
$("#btn").click(function() { 
$.get("get.php", $("#form").serialize(), function(data, textStatus) {//将表单中的数据逐条取出后封装上传 
$("#target").html(data);//将返回值填充至页面中 
}); 
});

serialize()方法可以自动编码,而且除表单之外的如checkbox等对象也可以使用其进行转换

同时还有serializeArray()方法可以将元素序列化后返回数组形式的JSON对象,而非JSON字符串

即无需使用jQuery.parseJSON()方法进行转换

返回值可直接使用类似$.each()等方法进行操作使用

Javascript 相关文章推荐
javascript 打开页面window.location和window.open的区别
Mar 17 Javascript
jQuery参数列表集合
Apr 06 Javascript
javascript中input中readonly和disabled区别介绍
Oct 23 Javascript
javascript实现锁定网页、密码解锁效果(类似系统屏幕保护效果)
Aug 15 Javascript
easyui Draggable组件实现拖动效果
Aug 19 Javascript
jquery判断复选框是否选中进行答题提示特效
Dec 10 Javascript
js数组方法reduce经典用法代码分享
Jan 07 Javascript
element-ui中select组件绑定值改变,触发change事件方法
Aug 24 Javascript
Vue实现页面添加水印功能
Nov 09 Javascript
vue在路由中验证token是否存在的简单实现
Nov 11 Javascript
24个ES6方法解决JS实际开发问题(小结)
May 31 Javascript
vue选项卡切换的实现案例
Apr 11 Vue.js
Jquery下EasyUI组件中的DataGrid结果集清空方法
Jan 06 #Javascript
以JSON形式将JS中Array对象数组传至后台的方法
Jan 06 #Javascript
js解决弹窗问题实现班级跳转DIV示例
Jan 06 #Javascript
instanceof和typeof运算符的区别详解
Jan 06 #Javascript
jquery使用append(content)方法注意事项分享
Jan 06 #Javascript
javascript客户端遍历控件与获取父容器对象示例代码
Jan 06 #Javascript
Javascript 遍历页面text控件详解
Jan 06 #Javascript
You might like
PHP+Mysql+jQuery实现动态展示信息
2011/10/08 PHP
destoon实现会员商铺中指定会员或会员组投放广告的方法
2014/08/21 PHP
php比较相似字符串的方法
2015/06/05 PHP
php提高网站效率的技巧
2015/09/29 PHP
大家须知简单的php性能优化注意点
2016/01/04 PHP
音乐播放用的的几个函数
2006/09/07 Javascript
IE和firefox浏览器的event事件兼容性汇总
2009/12/06 Javascript
原生javascript图片自动或手动切换示例附演示源码
2013/09/04 Javascript
使用js写的一个简易的投票
2013/11/27 Javascript
jQuery图片切换插件jquery.cycle.js使用示例
2014/06/16 Javascript
动态设置form表单的action属性的值的简单方法
2016/05/25 Javascript
bootstrap中使用google prettify让代码高亮的方法
2016/10/21 Javascript
jQuery之动画效果大全
2016/11/09 Javascript
layui表格实现代码
2017/05/20 Javascript
用p5.js制作烟花特效的示例代码
2018/03/21 Javascript
JS中循环遍历数组的四种方式总结
2021/01/23 Javascript
[46:20]TFT vs Secret Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
Python实现在Linux系统下更改当前进程运行用户
2015/02/04 Python
python提取字典key列表的方法
2015/07/11 Python
对numpy Array [: ,] 的取值方法详解
2018/07/02 Python
利用Django-environ如何区分不同环境
2018/08/26 Python
python leetcode 字符串相乘实例详解
2018/09/03 Python
python 实现在tkinter中动态显示label图片的方法
2019/06/13 Python
python实现对服务器脚本敏感信息的加密解密功能
2019/08/13 Python
opencv转换颜色空间更改图片背景
2019/08/20 Python
英国奢侈品概念店:Base Blu
2019/05/16 全球购物
生物化工工艺专业应届生求职信
2013/10/08 职场文书
个人实用简单的自我评价
2013/10/19 职场文书
高级护理专业大学生求职信
2013/10/24 职场文书
师范学院教师自荐书
2014/01/31 职场文书
网络管理员岗位职责
2015/02/12 职场文书
宾馆卫生管理制度
2015/08/06 职场文书
小学语文教学随笔
2015/08/14 职场文书
分析Netty直接内存原理及应用
2021/06/14 Java/Android
html5实现点击弹出图片功能
2021/07/16 HTML / CSS
《地。-关于地球的运动-》单行本第七集上市,小说家朝井辽献上期待又害怕的推荐文
2022/03/31 日漫