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=男"

可以在表单中添加一个id的隐藏input 比如:<input type='hidden' name='id' value='{$id}'>

提交的时候可以判断这个id中是否有值,来区分是添加还是编辑的 *** 作。

<body><button id="addform"></button></body> $(function(){

   $("#addform").click(function(){

         var form = $("<form></form>")

         var select = $("<select></select>")

         var option1 = $("<option>1</option")

          var option2 = $("<option>2</option")

           var option3 = $("<option>3</option")

           select.append(option1)

           select.append(option2)

           select.append(option3)

           var input  = $("<input type='text'/>")

           form.append(select)

           form.append(input)

           $("body").append(form)

   })

   

   })


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

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

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

发表评论

登录后才能评论

评论列表(0条)

    保存