业务需要,有时候需要我们前端传递给后台数组方式,普通的方式显而无法满足要求,那么问题来了,我们如何传递数组给服务端?废话不说,直接上代码。
<pre>
$(function() {
var params = {
name: 'admin',
address: {
province: '浙江',
city: '杭州'
},
fids: [1, 2],
friends: [{
name: '张三',
age: 10
}, {
name: '李四',
age: 15
}]
};
$.ajax({
url: '后台接口地址',
type: 'GET',
data: $.param(serializeObjects(params)),
traditional: true,
success: function(result) {
// 成功函数
},
error: function() {
console.log('error');
}
});
// 对参数进行特殊转化
function serializeObjects(params) {
var obj = {};
for (var k in params) {
var o = params[k];
if ('[object Array]' === Object.prototype.toString.call(o))
for (var i = 0; i < o.length; i++) {
var o1 = o[i];
if ('[object Object]' === Object.prototype.toString.call(o1))
for (var k1 in o1) obj[(k + '[' + i + '].' + k1).toString()] = o1[k1];
else obj[(k + '[' + i + ']').toString()] = o1;
} else if ('[object Object]' === Object.prototype.toString.call(o))
for (var k2 in o) obj[(k + '.' + k2).toString()] = o[k2];
else obj[k.toString()] = o;
}
return obj;
}
})
</pre>
github相关链接:https://github.com/sosout/webPit/blob/master/demos/201612151116.html
个人博客:http://www.sosout.com/
ajax传递给后台数组参数方式
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...