位置: 编程技术 - 正文

基于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做运算)

  • 公司房屋修缮账务流程
  • 上月留抵进项本月抵扣会计分录
  • 增值税专用发票抵扣期限
  • 为什么要结转发出材料成本差异
  • 售后维修收入怎么入账
  • 固定资产明细账需要每年更换吗
  • 公司转让注册资金怎么弄
  • 建筑安装项目要求有哪些
  • 合作社收到补贴款如何入账
  • 小规模纳税人不允许开具零税率发票
  • 出口商品一定要有条形码吗
  • 企业为什么要签订集体合同
  • 发票已经开但是没有收到发票怎么做
  • 专家评审费个人所得税由谁支付
  • 车辆保险属于金融服务吗
  • 营业额500万以上税率
  • 批发企业购进商品发生的进货费用可以选择下列
  • 公司缴纳递延所得税吗
  • 总公司汇总申报怎么弄
  • 决算帐表不相符怎么处理
  • 政策性搬迁的会计实用报告
  • 公益性捐赠的个税
  • 盘亏的转销金额
  • 公司自有房屋出租 没有从租计征房产税
  • 增资后持股比例怎么算
  • 预测“叫停GPT-4后续AI大模型”后续:这是一个囚徒困境
  • win7宽带连接错误651
  • MacOS Big Sur 11.3网页怎么设置时间限制?
  • 苹果手机录音转mp3怎么转
  • vue中methods的作用
  • 广告费可以结转几年扣除
  • 运输费计税吗
  • 对方开了红字信息表我们开发票怎么做账
  • 机器学习分类算法之XGBoost(集成学习算法)
  • 民办学校学费收入
  • 经营性应收项目和经营性应付项目
  • 一般人转小规模政策文号
  • 个体户一直未申请怎么办
  • wordpress禁止更新插件
  • CORS跨域资源共享漏洞
  • 准予从销项税额中扣除的有哪些
  • 以前年度损益调整账务处理分录
  • 年金缴费是什么意思
  • 长期股权投资其他资本公积
  • 可以直接申请一个微信吗
  • sqlserver数据库备份
  • 建筑安装业,指从事____的企业
  • 支付大型设备税率是多少
  • 发工资四舍五入多了几块钱怎么办
  • 人力资源外包服务平台
  • 未分配利润的
  • 协会会费怎么入账
  • 发工资代付是什么意思
  • 工会经费计提比例是2%还是0.8%
  • 支付水电费取得专用发票上注明税金0.68万元
  • 新手会计做账怎么做账
  • sql 判断数据是否存在
  • 如何用win7
  • office2016formac更新了什么 新版macoffice软件功能一览
  • centos6启动服务的命令
  • ireike.exe - ireike是什么进程 有什么作用
  • win7开始菜单中的程序图标修改了
  • linux卡屏
  • win10如何不升级系统
  • windows10总是提醒更新
  • win10怎么设置扩展屏
  • win8快速启动怎么开启
  • express model
  • css样式表三种方式
  • python解读
  • linux内核讲解
  • angular.js
  • Metaio in Unity3d 教学--- 二. 创建自己的Application
  • js 编程
  • 谈谈我对美国的印象
  • 个人所得税完税证明怎么开具
  • 智能财税证书含金量
  • 杭州国税咨询电话
  • 内蒙古税务总局网站官网
  • 龙岗税务分局管辖范围
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设