jQuery实现form表单序列化转换为json对象功能示例


Posted in jQuery onMay 23, 2018

本文实例讲述了jQuery实现form表单序列化转换为json对象功能。分享给大家供大家参考,具体如下:

做web前端开发时,需要ajax提交大量表单数据,如果一个个form字段拼接很费劲也容易出错,下面方法可解决这个问题

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>jquery form序列化转换为json对象</title>
    <script src="//cdn.bootcss.com/jquery/3.0.0/jquery.min.js"></script>
    </script>
  </head>
  <body>
    <form action="" name="post_form" id="post_form">
      姓名:<input type="name" name="name" value="王">
      <br/>性别:<input type="radio" name="sex" value="男" checked>男<input type="radio" name="sex" value="女">女
      <br/>爱好:<input type="checkbox" name="loves" value="篮球" >篮球<input type="checkbox" name="loves" value="足球">足球
      <br/>籍贯:<select name="province">
              <option value="上海">上海</option>
              <option value="北京">北京</option>
              <option value="深圳">深圳</option>
            </select>
    </form>
    <div id="result" style="margin-top:20px;width:600px;height:100px;border:1px solid #f00;">
    </div>
    <div>
    <button id="send">发送</button>
    </div>
    <script>
    //jquery form序列化转换为json对象
    (function($){
      $.fn.serializeJson=function(){
        var serializeObj={};
        var array=this.serializeArray();
        var str=this.serialize();
        $(array).each(function(){
          if(serializeObj[this.name]){
            if($.isArray(serializeObj[this.name])){
              serializeObj[this.name].push(this.value);
            }else{
              serializeObj[this.name]=[serializeObj[this.name],this.value];
            }
          }else{
            serializeObj[this.name]=this.value;
          }
        });
        return serializeObj;
      };
    })(jQuery);
    $(document).ready(function(){
      $("#send").click(function(){
        var post_data=$("#post_form").serializeJson();//表单序列化
        $("#result").html(JSON.stringify(post_data));
      })
    })
    </script>
  </body>
</html>

运行效果如下图所示:

jQuery实现form表单序列化转换为json对象功能示例

jQuery 相关文章推荐
node.js+jQuery实现用户登录注册AJAX交互
Apr 28 jQuery
jQuery返回定位插件详解
May 15 jQuery
JQuery form表单提交前验证单选框是否选中、删除记录时验证经验总结(整理)
Jun 09 jQuery
jQuery条件分页 代替离线查询(附代码)
Aug 17 jQuery
jQuery实现获取选中复选框的值实例详解
Jun 28 jQuery
jQuery实现的鼠标拖动画矩形框示例【可兼容IE8】
May 17 jQuery
jQuery中使用validate插件校验表单功能
May 24 jQuery
jQuery操作cookie的示例代码
Jun 05 jQuery
如何使用CSS3+JQuery实现悬浮墙式菜单
Jun 18 jQuery
jquery获取input输入框中的值
Nov 13 jQuery
jquery实现进度条状态展示
Mar 26 jQuery
JQuery使用数组遍历跳出each循环
Sep 01 jQuery
20个最常见的jQuery面试问题及答案
May 23 #jQuery
jQuery发请求传输中文参数乱码问题的解决方案
May 22 #jQuery
通过jquery toggleClass()属性制作文章段落更改背景颜色
May 21 #jQuery
jQuery获取随机颜色的实例代码
May 21 #jQuery
如何用input标签和jquery实现多图片的上传和回显功能
May 16 #jQuery
jQuery中元素选择器(element)简单用法示例
May 14 #jQuery
jQuery中的类名选择器(.class)用法简单示例
May 14 #jQuery
You might like
php巧获服务器端信息
2006/12/06 PHP
不支持fsockopen但支持culr环境下下ucenter与modoer通讯问题
2011/08/12 PHP
php实现TCP端口检测的方法
2015/04/01 PHP
PHP Cookie学习笔记
2016/08/23 PHP
浅析php中array_map和array_walk的使用对比
2016/11/20 PHP
学习ExtJS Window常用方法
2009/10/07 Javascript
Web跨浏览器进程通信(Web跨域)
2013/04/17 Javascript
jquery 合并内容相同的单元格(示例代码)
2013/12/13 Javascript
JavaScript中匿名、命名函数的性能测试
2014/09/04 Javascript
使用RequireJS优化JavaScript引用代码的方法
2015/07/01 Javascript
js控制多图左右滚动切换效果代码分享
2015/08/26 Javascript
Javascript实现图片轮播效果(一)让图片跳动起来
2016/02/17 Javascript
完善的jquery处理机制
2016/02/21 Javascript
jQuery实现背景弹性滚动的导航效果
2016/06/01 Javascript
JS遍历数组和对象的区别及递归遍历对象、数组、属性的方法详解
2016/06/14 Javascript
js两种拼接字符串的简单方法(必看)
2016/09/02 Javascript
js实现html table 行,列锁定的简单实例
2016/10/13 Javascript
AngularJS中transclude用法详解
2016/11/03 Javascript
JS基于onclick事件实现单个按钮的编辑与保存功能示例
2017/02/13 Javascript
python转换摩斯密码示例
2014/02/16 Python
dataframe设置两个条件取值的实例
2018/04/12 Python
Python切片操作深入详解
2018/07/27 Python
Django web框架使用url path name详解
2019/04/29 Python
基于Python计算圆周率pi代码实例
2020/03/25 Python
CSS3实现swap交换动画
2016/01/19 HTML / CSS
英国著名的茶叶品牌:Whittard of Chelsea
2016/09/22 全球购物
Original Penguin美国官网:布拉德皮特、强尼德普喜爱的服装品牌
2016/10/25 全球购物
校园十大歌手策划书
2014/02/01 职场文书
总经理的岗位职责
2014/02/23 职场文书
《他得的红圈圈最多》教学反思
2014/04/24 职场文书
机电一体化毕业生自荐信
2014/06/19 职场文书
后勤管理员岗位职责
2014/08/27 职场文书
导游词之徐州-云龙山
2019/09/29 职场文书
祝福语集锦:给满月宝宝的祝福语
2019/11/20 职场文书
少年的你:世界上没有如果,要在第一次就勇敢的反抗
2019/11/20 职场文书
Python基础知识学习之类的继承
2021/05/31 Python