Jquery表单序列化后添加数据

Jquery表单序列化后添加数据,第1张

serialize()、serializeArray()方法都是jquery用户序列化表单的,用于ajax提交的data值的序列化

在chrome的控制台我们很清楚的看到了serializeArray()返回的是json数组,数组的每个对象都是有json字符串构成,我们可以看到,每个json字符串包括两个键值对,每个键值对都是有name,value组成,其实serializeArray()它把表单里的每个需要提交的dom的name的值赋给json字符串的name,dom的value的值赋给json字符串的value.

那么我们只需这要添加额外的内容:

var dataParam = $("#updateChannelForm").serializeArray()

例如我想添加sex="男"

dataParam.push({"name":"sex","value":"男"}) 就可以了

我们看到serialize()方法把表单里的内容序列化成了字符串

"id=58&channelType=2&subTitle=591teststetets&extAttrValueId=599"

那么我们只需这要添加额外的内容:

var dataParam = $("#updateChannelForm").serialize()

例如我想添加sex="男"

dataParam =dataParam +"&"+"sex=男"

{

           "seeionkey": {

               1: {

                   "2": {

                       "qty": 1,

                       "works": 1,

                       "price": 500

                   },

                   "3": {

                       "qty": 1,

                       "works": 1,

                       "price": 500

                   }, "total": {

                       "qty": 2,

                       "works": 2,

                       "price": 1000

                   }

               },

               "总计": {

                   "总工时": 100,

                   "总费用": 200000

               }

           }

       }

首先你这个JSON是有点问题的。1: {这里的1表示key,请尽量用引号引上。

第二。json不是这么赋值。如下赋值是可以的。

        var xx = {"1":"2"}

        //赋值一个新的值

        xx.newValue = "3333"

        console.log(xx)

        //打印出来的值是:{ "1"="2",  "newValue"="3333"}

你试试吧


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11604488.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存