位置: 编程技术 - 正文

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

  • 产权式酒店规定
  • 个人缴纳职业年金是什么意思
  • 同一法人的两家企业可以以同一投标人身份投标吗
  • 利润表营业外收入怎么取数
  • 小企业遵循什么会计准则
  • 金税维护费申报表
  • 房地产开发企业预缴增值税
  • 土地出让金计算方法
  • 银行代付工资如何做财务处理合适?
  • 工会经费怎样申报
  • 第三方付款会计分录
  • 销售收入分成率计算公式
  • 残保金超比例奖励
  • 营改增租金收入税率
  • 包装报废会计处理
  • 收回委托加工物资的实际成本
  • 递延收益可以是负数吗
  • 哪些公司可以开咨询费发票
  • 利润分配可以用现金吗
  • 协会会费入账科目是哪个
  • 企业交残疾人基金会计分录怎么做
  • 行政事业单位如何加强财务管理
  • 销售已作进项税转出的固定资产怎样缴税?
  • 劳务收入不足800
  • 个人租车给单位合同怎么写
  • windows10无线网卡怎么连接无线网
  • 收到政府的专项资金
  • php嵌入js
  • php获取文件列表并输出
  • 三代税款手续费支付比例
  • 收取个人挂靠的管理费用要交税吗?
  • mcappins.exe - mcappins进程是什么文件 什么意思.
  • 长期借款的概念
  • 销售汇总表格模板
  • linux乱码怎么改
  • PHP:zip_close()的用法_Zip函数
  • 房地产开发企业涉及哪些税
  • 摇树的英文是什么
  • ci框架教程
  • 使用筷子就餐会不会传染乙肝病毒
  • 车间一般耗材计入
  • java泛型方法的作用
  • 公司采购一直没走对公付款怎么处理
  • 结构性存款随时可取么
  • 社保费怎么做记账凭证
  • python中dataframe的布尔过滤
  • 递延收益为什么是递延所得税资产
  • 购买税控设备的分录怎么做
  • 应收款超过多久未收回可界定为损失
  • 营改增小规模纳税人认定标准
  • 税款所属期止是怎么写
  • 个体户怎么交税?
  • 什么情况下企业亏损但继续生产
  • 企业哪些进项税抵扣
  • 股权收购协议书实际案例
  • 什么是营业净利率计算公式
  • 管理费用的会计要素
  • 医院销售药品是否缴纳增值税
  • 所得税费用结转分录
  • 已计提教育费附加但是未扣除个税
  • 当月作废的专票还是要交增值税吗
  • sql树结构
  • sqlgun
  • win10系统可以自己安装驱动吗
  • macos sierra版本10.12.6升级
  • 升级ubuntu
  • 电脑cortana小娜有用吗
  • win10显示win8
  • win10怎么禁用device/credential guard
  • 搭建android开发环境时为什么要先安装jdk
  • js插件写法
  • windows批处理命令教程
  • IE hack条件写法
  • unity增加组件
  • node.js 10实战
  • 火狐浏览器不支持弹出对话框操作
  • python:\n
  • python string包
  • 惠州市国家税务局张新华简历
  • 福建农村社保一个月可以拿多少钱
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设