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 相关文章推荐
情人节专属 纯js脚本1k大小的3D玫瑰效果
Feb 11 Javascript
Javascript实现返回上一页面并刷新的小例子
Dec 11 Javascript
jquery禁用右键单击功能屏蔽F5刷新
Mar 17 Javascript
第一章之初识Bootstrap
Apr 25 Javascript
Vue.js每天必学之数据双向绑定
Sep 05 Javascript
jQuery的ajax中使用FormData实现页面无刷新上传功能
Jan 16 Javascript
BootStrap Fileinput插件和Bootstrap table表格插件相结合实现文件上传、预览、提交的导入Excel数据操作步骤
Aug 07 Javascript
JS操作时间 - UNIX时间戳的简单介绍(必看篇)
Aug 16 Javascript
浅谈Vue2.0中v-for迭代语法的变化(key、index)
Mar 06 Javascript
JavaScript创建、读取和删除cookie
Sep 03 Javascript
vue实现数据控制视图的原理解析
Jan 07 Javascript
使用react+redux实现计数器功能及遇到问题
Jun 02 Javascript
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 缓存实现代码及详细注释
2010/05/16 PHP
JS与PHP向函数传递可变参数的区别实例代码
2011/05/18 PHP
深入PHP nl2br()格式化输出的详解
2013/06/05 PHP
利用curl 多线程 模拟 并发的详解
2013/06/14 PHP
基于PHP的简单采集数据入库程序
2014/07/30 PHP
phpword插件导出word文件时中文乱码问题处理方案
2014/08/19 PHP
Aster vs Newbee BO5 第三场2.19
2021/03/10 DOTA
JavaScript中也使用$美元符号来代替document.getElementById
2010/06/19 Javascript
Jquery带搜索框的下拉菜单
2013/05/06 Javascript
常用jQuery代码分享
2015/07/14 Javascript
jquery插件方式实现table查询功能的简单实例
2016/06/06 Javascript
关于Vue.js 2.0的Vuex 2.0 你需要更新的知识库
2016/11/30 Javascript
详解JavaScript中this的指向问题
2017/01/20 Javascript
jQuery实现遍历复选框的方法示例
2017/03/06 Javascript
Angular中点击li标签实现更改颜色的核心代码
2017/12/08 Javascript
VUE2 前端实现 静态二级省市联动选择select的示例
2018/02/09 Javascript
React路由管理之React Router总结
2018/05/10 Javascript
angularjs中判断ng-repeat是否迭代完的实例
2018/09/12 Javascript
微信小程序纯文本实现@功能
2020/04/08 Javascript
vue-cli或vue项目利用HBuilder打包成移动端app操作
2020/07/29 Javascript
Python中字典的setdefault()方法教程
2017/02/07 Python
python批量替换页眉页脚实例代码
2018/01/22 Python
Python逐行读取文件中内容的简单方法
2019/02/26 Python
python字典的setdefault的巧妙用法
2019/08/07 Python
Python3 tkinter 实现文件读取及保存功能
2019/09/12 Python
Python函数的默认参数设计示例详解
2019/12/01 Python
如何在mac下配置python虚拟环境
2020/07/06 Python
关于Java String的一道面试题
2013/09/29 面试题
触电现场处置方案
2014/05/14 职场文书
党员承诺书怎么写
2014/05/20 职场文书
煤矿安全生产标语
2014/06/06 职场文书
2014年反腐倡廉工作总结
2014/12/05 职场文书
创先争优承诺书
2015/01/20 职场文书
2015年仓库工作总结
2015/04/09 职场文书
校车司机安全责任书
2015/05/11 职场文书
Linux7.6二进制安装Mysql8.0.27详细操作步骤
2021/11/27 MySQL