form转化json
;(function($){ /*** 依赖jquery-1.4.2* 依赖jquery.json-2.2,参考http://code.google.com/p/jquery-json/* 用于将form序列化成json串,并且可以反序列化添充回来* 作者:段旭光 2010-08-08*/ $.fn.serializeObjectToJson = function() {/*** 此方法代码参考:http://css-tricks.com/snippets/jquery/serialize-form-to-json/*/var o = {};var a = this.serializeArray();$.each(a, function() {if (o[this.name]) {if (!o[this.name].push) {o[this.name] = [o[this.name]];}o[this.name].push(this.value || '');} else {o[this.name] = this.value || '';}});return o;// return $.toJSON(o); }; /*** 按json格式添充现有form,基中json的key对应form内的元素name* 支持input、radio、select、textarea单值或多值* 参数json为json对象*/ $.fn.unSerializeObjectFromJson = function(json) {if(!json) return;var values=eval('('+json+')');var form=this;/*** 得到现有form表单的内容,如果表单有默认值则全部清空,主要针对单值表单项,如:checkbox、radio,因为这些项如果不选中会不被序列化记录暂存,所以* 在反序列化时,无法处理可能存在默认值的这些表单项,所以这里做一下特殊处理*/var defaultFormJsonValues=form.serializeObjectToJson();$.each(defaultFormJsonValues, function(key, value){var object=form.find("*[name='"+key+"']");if(object.length==1){if(object.attr("type").toLowerCase()=='radio' || object.attr("type").toLowerCase()=='checkbox'){object.attr("checked",false);}}});//加载需要添充的表单内容$.each(values, function(key,value){var object=form.find("*[name='"+key+"']");//得到form内指定name的控件if(object.length==1){if(object.attr("type").toLowerCase()=='radio' || object.attr("type").toLowerCase()=='checkbox'){if(object.val()==value){object.attr("checked",true);}return true;}else{object.val(value);}}else if(object.length>1){object.each(function(i){if(object.attr("type").toLowerCase()=='radio' || object.attr("type").toLowerCase()=='checkbox'){if($.inArray($(this).val(),value)!=-1){$(this).attr("checked",true);}else{$(this).attr("checked",false);}}else{$(this).val(value[i]);}});}});}; /*** 得到当前年的第一天*/ $.getCurrentYearFirstDay=function(format){var date=new Date();var fDate=new Date(date.getFullYear(),0,1,0,0,0,0);return $.getFormateDate(format,fDate); }; /*** 得到当前年的最后一天*/ $.getCurrentYearLastDay=function(format){var date=new Date();var fDate=new Date(date.getFullYear(),11,31,23,59,59,999);return $.getFormateDate(format,fDate); }; /*** 得到当前月的第一天*/ $.getCurrentMonthFirstDay=function(format){var date=new Date();var fDate=new Date(date.getFullYear(),date.getMonth(),1,0,0,0,0);return $.getFormateDate(format,fDate); }; /*** 得到当前月的最后一天*/ $.getCurrentMonthLastDay=function(format){var date=new Date();var fDate=new Date(date.getFullYear(),date.getMonth()+1,0,23,59,59,999);return $.getFormateDate(format,fDate); }; /*** 格式化日期*/ $.getFormateDate = function(fmt,date){if(!date) date=new Date();var o={ "M+" : date.getMonth()+1, //月份 "d+" : date.getDate(), //日 "h+" : date.getHours()%12 == 0 ? 12 : date.getHours()%12, //小时"H+" : date.getHours(), //小时"m+" : date.getMinutes(), //分"s+" : date.getSeconds(), //秒"q+" : Math.floor((date.getMonth()+3)/3), //季度"S" : date.getMilliseconds() //毫秒 };var week={"0" : "\u65e5","1" : "\u4e00","2" : "\u4e8c","3" : "\u4e09","4" : "\u56db","5" : "\u4e94","6" : "\u516d" };if(/(y+)/.test(fmt)){ fmt=fmt.replace(RegExp.$1, (date.getFullYear()+"").substr(4 - RegExp.$1.length)); } if(/(E+)/.test(fmt)){fmt=fmt.replace(RegExp.$1, ((RegExp.$1.length>1) ? (RegExp.$1.length>2 ? "\u661f\u671f" : "\u5468") : "")+week[date.getDay()+""]); } for(var k in o){if(new RegExp("("+ k +")").test(fmt)){fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));}}return fmt; }; })(jQuery);
转载于:https://www.cnblogs.com/Shadow3627/p/3168893.html
form转化json相关推荐
- Php 表单转json,form转json实现方法
本文主要介绍了jQuery实现的form转json功能,结合完整实例形式分析了jQuery将form表单数据封装成json传输的具体步骤与相关操作技巧,需要的朋友可以参考下,希望能帮助到大家. /p& ...
- Python3封装之谷歌浏览器收藏夹导出数据转化JSON
演示数据: 执行示例 # -*- coding: utf-8 -*- from FormatBookmark import FormatBookmarkif __name__ == '__main__ ...
- html form 提交json数据格式,表单提交时编码类型enctype详解
很早以前,当还没有前端这个概念的时候,我在写表单提交完全不去理会表单数据的编码,在action属性里写好目标URL,剩下的啊交给浏览器吧~但是现在,更多时候我们都采用Ajax方式提交数据,这种原始的方 ...
- html+form+提交json数据,form表单提交json格式数据
我的实践整理.java 方式一: 发送数据web $(':submit').on('click',function(){ $.ajax({ url:"buy", type:&quo ...
- form转json:jquery.serializeJSON
项目地址 https://github.com/marioizquierdo/jquery.serializeJSON 引入js <script type="text/javascri ...
- Python解码JS的encodeURIComponent并转化JSON
#这个是js的结果 # encodeURIComponent('{ "name": "admin", "password": "a ...
- js中 json对象的转化 JSON.parse()
JSON.parse() 方法用来解析JSON字符串,json.parse()将字符串转成json对象.构造由字符串描述的JavaScript值或对象.提供可选的reviver函数用以在返回之前对所得 ...
- html转化excel为json对象,纯js前端json转exl的几种方法
第一种导出excel无需自己设置,直接根据json生成 (缺点:json数据全部展示,且只能按获取数据的顺序显示) //json数据转excel function JSONToExcelConvert ...
- java json 对象操作_JSON的相关操作和与java对象的转化
JSON概述: JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) 使用{}进行包含对象,可以使用[]包含{}对象的形式,对象里面也可以含有[] ...
最新文章
- 多传感器融合之滤波(一)——卡尔曼滤波(KF)推导
- python代码翻译-用python实现百度翻译的示例代码
- kali安装vmtools不能拖拽(复制粘贴)文件解决方法
- 单一职责在.NET中
- c++ set 遍历_47. Set 是如何工作的(3) 遍历顺序是如何确定的?
- linux服务器查看mysql服务名称_Linux服务器查看MySQL信息
- cmd编译java文件中文乱码_乱码 HelloWorld 世界你好 cmd 执行输出的中文java 显示乱码 解决 另附 win无法执行编译运行javac java编译文件的解决方案...
- linux expect sftp,expect实现sftp文件同步
- 软件实施提升效率的五个工具
- Intel XDK问题
- “模板”学习笔记(3)-----为啥函数模板不能重载
- AxureRP8.1(注册码)破解汉化教程
- 工程项目管理系统java程序,基于jsp的工程项目管理系统-JavaEE实现工程项目管理系统 - java项目源码...
- STM32F103C8T6有128K的Flash
- 网络SSID是什么意思
- 【AD封装】插件电阻贴片电阻排阻分装(带3D)
- Kaggle教程 机器学习中级3 分类变量
- 每月更新的Mac软件序列号查询小机器人KCNScrew Pack
- npm插件开发-Vue插件
- OpenStack+Ceph集群 虚机实例扩容