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);

posted on 2013-07-03 10:10 风暴烈酒辰 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/Shadow3627/p/3168893.html

form转化json相关推荐

  1. Php 表单转json,form转json实现方法

    本文主要介绍了jQuery实现的form转json功能,结合完整实例形式分析了jQuery将form表单数据封装成json传输的具体步骤与相关操作技巧,需要的朋友可以参考下,希望能帮助到大家. /p& ...

  2. Python3封装之谷歌浏览器收藏夹导出数据转化JSON

    演示数据: 执行示例 # -*- coding: utf-8 -*- from FormatBookmark import FormatBookmarkif __name__ == '__main__ ...

  3. html form 提交json数据格式,表单提交时编码类型enctype详解

    很早以前,当还没有前端这个概念的时候,我在写表单提交完全不去理会表单数据的编码,在action属性里写好目标URL,剩下的啊交给浏览器吧~但是现在,更多时候我们都采用Ajax方式提交数据,这种原始的方 ...

  4. html+form+提交json数据,form表单提交json格式数据

    我的实践整理.java 方式一: 发送数据web $(':submit').on('click',function(){ $.ajax({ url:"buy", type:&quo ...

  5. form转json:jquery.serializeJSON

    项目地址 https://github.com/marioizquierdo/jquery.serializeJSON 引入js <script type="text/javascri ...

  6. Python解码JS的encodeURIComponent并转化JSON

    #这个是js的结果 # encodeURIComponent('{ "name": "admin", "password": "a ...

  7. js中 json对象的转化 JSON.parse()

    JSON.parse() 方法用来解析JSON字符串,json.parse()将字符串转成json对象.构造由字符串描述的JavaScript值或对象.提供可选的reviver函数用以在返回之前对所得 ...

  8. html转化excel为json对象,纯js前端json转exl的几种方法

    第一种导出excel无需自己设置,直接根据json生成 (缺点:json数据全部展示,且只能按获取数据的顺序显示) //json数据转excel function JSONToExcelConvert ...

  9. java json 对象操作_JSON的相关操作和与java对象的转化

    JSON概述: JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) 使用{}进行包含对象,可以使用[]包含{}对象的形式,对象里面也可以含有[] ...

最新文章

  1. 多传感器融合之滤波(一)——卡尔曼滤波(KF)推导
  2. python代码翻译-用python实现百度翻译的示例代码
  3. kali安装vmtools不能拖拽(复制粘贴)文件解决方法
  4. 单一职责在.NET中
  5. c++ set 遍历_47. Set 是如何工作的(3) 遍历顺序是如何确定的?
  6. linux服务器查看mysql服务名称_Linux服务器查看MySQL信息
  7. cmd编译java文件中文乱码_乱码 HelloWorld 世界你好 cmd 执行输出的中文java 显示乱码 解决 另附 win无法执行编译运行javac java编译文件的解决方案...
  8. linux expect sftp,expect实现sftp文件同步
  9. 软件实施提升效率的五个工具
  10. Intel XDK问题
  11. “模板”学习笔记(3)-----为啥函数模板不能重载
  12. AxureRP8.1(注册码)破解汉化教程
  13. 工程项目管理系统java程序,基于jsp的工程项目管理系统-JavaEE实现工程项目管理系统 - java项目源码...
  14. STM32F103C8T6有128K的Flash
  15. 网络SSID是什么意思
  16. 【AD封装】插件电阻贴片电阻排阻分装(带3D)
  17. Kaggle教程 机器学习中级3 分类变量
  18. 每月更新的Mac软件序列号查询小机器人KCNScrew Pack
  19. npm插件开发-Vue插件
  20. OpenStack+Ceph集群 虚机实例扩容

热门文章

  1. 官方解读双十一大促直播都看什么指标?
  2. 2021年施工员-市政方向-通用基础(施工员)考试及施工员-市政方向-通用基础(施工员)复审考试
  3. 艰难学习codepen之landscape
  4. 程序设计与实践 自动售货机 C语言
  5. 贰零壹壹,壹壹,壹柒
  6. 几种电子巡更系统比较
  7. barracuda mysql,MySQL Antelope和Barracuda的区别分析_MySQL
  8. mysql设置负载均衡_如何设置mysql的负载均衡?
  9. 增持潮又起 破增持个股成风景
  10. APISpace 汉语拆字API