位置: 编程技术 - 正文

基于JavaScript将表单序列化类型的数据转化成对象的处理(允许对象中包含对象)(用javascript)

编辑:rootadmin

推荐整理分享基于JavaScript将表单序列化类型的数据转化成对象的处理(允许对象中包含对象)(用javascript),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js基于什么,编写javascript,javascript怎么用,javascript基于什么的语言,编写javascript,编写javascript,javascript基于什么的语言,用javascript,内容如对您有帮助,希望把文章链接给更多的朋友!

表单序列化类型的数据是指url传递的数据的格式,形如"key=value&key=value&key=value"这样的key/value的键值对。一般来说使用jQuery的$.fn.serialize函数能达到这样的效果。如何将这样的格式转化为对象?

  我们知道使用jQuery的$.fn.serializeArray函数得到的是一个如下结构的对象

  这是一个对象数组,但有时候我们希望得到的是如下结构的对象

  所以这里需要一个转化函数。

处理步骤如下:

  1.使用"&"分隔将每一个键值对分开然后循环处理每一个键值对

基于JavaScript将表单序列化类型的数据转化成对象的处理(允许对象中包含对象)(用javascript)

  2.从"="符号切分指定的键值对,并对每个键和值使用decodeURIComponent解析uri 组件编码(因为url传递的序列化数据一般都是经过uri组件编码的)

  3.如果值包含"="符号,需要额外处理(值合并)。

  这里面有一个处理,就是值没有的时候就不会往最终对象里面添加。这个可以根据自己的情况选择删除这段代码与否

  4.如果键是“obj.obj.obj”这种由"."符号链接的,需要将它作为对象包含对象来处理。处理的方法是将键通过"."分解,然后去查看临时对象obj中是否已经包含分解出来的对象,如果是则将数据附加到已有的对象上。源码如下

  这里面我们看到网上有对赋值部分是这么处理的

  这个很有问题,一个是不能正确处理4中对象包含对象的问题(尤其是有两个元素拥有同一个父对象的时候,比如"test.id=1&test.name='chua'"都拥有父对象test)。另外一个就是值attributeValue中包含单引号、双引号时无法正确处理。所以使用赋值"="最保险。

  所以最终完整的源码如下

以上内容是基于JavaScript将表单序列化类型的数据转化成对象的处理(允许对象中包含对象),希望本文分享能够给大家带来帮助。

js运动应用实例解析 本文为大家提供了两个js运动应用实例,分享给大家,具体实现内容如下应用1,完成如下效果:js代码如下:scriptsrc="move.js"/scriptscriptwindow.onload=function(){

js实现瀑布流的三种方式比较 瀑布流是一种网站页面布局,视觉表现为参差不齐的多栏布局,随着页面滚动条向下滚动,这种布局还会不断加载数据块并附加至当前尾部。最早采用

原生JavaScript实现瀑布流布局 本文实例讲解了原生JavaScript实现瀑布流布局详细代码,分享给大家供大家参考,具体内容如下效果图:具体代码:window.onload=function(){waterfall('main','pin');

标签: 用javascript

本文链接地址:https://www.jiuchutong.com/biancheng/385574.html 转载请保留说明!

上一篇:基于JavaScript实现网页倒计时自动跳转代码(javascript基于什么的语言)

下一篇:js运动应用实例解析(js做运算)

  • 不能跨年
  • 城市维护建设税优惠政策
  • 半成品可以计入成本吗
  • 转让旧固定资产可以开专票吗
  • 金税盘维护费发票需要认证吗
  • 个体工商户属于非法人组织吗
  • 利息资本化计入什么现金流量科目
  • 给员工发礼品发什么礼品最实惠
  • 接受劳务是进项还是销项
  • 金蝶k3审核过账在哪里
  • 电子承兑汇票到期前10天可以做提示付款
  • 项目分红是否需要交税
  • 开出增值税发票没收到怎么抵扣进项税?
  • 地税开发票为啥要交百分之二的企业所得税?
  • 出口用的增值税税率
  • 红字发票信息表填好后再怎么操作
  • 认缴制的期限是多久
  • 会计学堂值得购买吗
  • 工会经费减免最新政策2020年山西
  • 专门从事股权投资的合伙企业投资收益 个人所得税
  • 银行定期存款的利息是每个月给你吗
  • 免征房产税是多少
  • 内部交易逆流如何算利润
  • 前端解决方案
  • xshell怎么用vim
  • linux怎么更改账户名
  • php跨域解决方案
  • 员工的通讯费怎么报销
  • 泛微oa二次开发难吗
  • php静态函数
  • yolo训练参数
  • 前端image
  • sed命令大全
  • phpcms使用教程
  • 劳务分包的形式有哪些
  • 合同印花税可以年底报一次
  • 专用发票必须按照销售方开户行及账号付款吗
  • 冲销以前年度费用会计分录
  • 销售成本是付现成本吗
  • 财务费用的相关认定
  • 项目终止前期费用核销
  • 印花税只能到角吗
  • 小规模加工企业加工费会计分录
  • mysql 中文乱码 识别
  • 股票价值和内部收益率的公式
  • 清洁费用属于哪个会计科目
  • 小规模纳税人免增值税的账务处理
  • 增值税为什么要结转
  • 海关进口增值税专用缴款书在哪里打印
  • 个体户一个月能赚多少钱
  • 无形资产摊销年限最新规定
  • 什么是固定资产清理
  • 个税返还开票什么项目
  • 本年利润怎么结账
  • 产品销售成本计算表
  • access数据库导入到sqlserver
  • mysql 5.7.13 winx64安装配置方法图文教程
  • 在系统注册表中注册
  • win 注册表
  • win8.1电脑设置在哪里
  • assoc.exe
  • win10系统无法运行exe文件
  • windows7回收站图标没了
  • win7电脑系统如何
  • 人在国外怎么补办身份证
  • linux安装步骤
  • jquery ajax异步提交表单数据的方法
  • [置顶] 此外,车牌号:458143(懂得都懂[吃瓜])
  • ExtJS Grid使用SimpleStore、多选框的方法
  • androidstudio手机编程软件
  • android蓝牙连接过程
  • vue中父组件向子组件传递数据
  • find 批处理
  • dos跳转到指定目录
  • javascript学习指南
  • js设计模型
  • 发票机怎么测试打印
  • 江苏省常熟市归哪管
  • 扣缴个人所得税客户端操作流程
  • 企业月度统计表在哪里查找
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设