您的当前位置:首页正文

form转json,将form表单中的数据序列化数组后转换为Json

2024-03-12 来源:易榕旅网
form转json,将form表单中的数据序列化数组后转换为Json

页⾯中引⽤了jquery,第⼀想到的就是序列化,但是序列化后的表单字段为a=1&b=2这种。这⾥写⼀个jquery的扩展⽅法

$.fn.serializeObject = function() {

var o = {};

var a = this.serializeArray(); $.each(a, function() { if (o[this.name]) {

if (!o[this.name].push) {

o[this.name] = [o[this.name]]; }

o[this.name].push(this.value || ''); } else {

o[this.name] = this.value || ''; } });

return o; };   

这个⽅法是将表单序列化成json的。

像这样调⽤:

var para = $('form').serializeObject() ; para = JSON.stringify(para) ;   

先把表单数据序列化为⼀个json对象,然后将json对象转换成⼀个json字符串。这样para就是⼀个json字符串啦。就可以发起请求了

注意:这个只能获取到所有的input标签,如果想获取下拉框的话,需要单独获取,然后把获取到的值拼接进去。例如:

var data=$(\"#fm\").serializeObject();JSON.stringify(data);

data.txt2=\"1111\";//修改值

var sel1=$(\"#sel1\").val();//获取下拉框的值data.sel1=sel1;//拼接进去

  

因篇幅问题不能全部显示,请点此查看更多更全内容