• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
孤独的DNA
博客园    首页    新随笔    联系   管理    订阅  订阅

js序列化数组用于ajax提交数据

但我们要用ajajx提交类似于:
array('id' =>12,data => array('a'=>1,'b'=>2));
这样的二维数组的数据时,直接ajax提交后台是接收不到的,需要特殊处理下:
//这里只能处理二维数组数据,多维的需在做循环或递归
function serialize_data(obj){ var str = ''; for(var i in obj){ if(typeof(obj[i]) === 'object'){ for(var s in obj[i]){ str = str + i+'['+ s + ']' + '=' + obj[i][s] + '&'; } }else{ str = str + i + '=' + obj[i] + '&'; } } return encodeURI(str); }

  

实际上就是类似于这样的url请求:

http://192.168.0.63/index,php?id=12&data[a]=1&data[b]=2

用于请求的时候其实可以使用:

var str = URIencode('id=12&data[a]=1&data[b]=2');

然后将str用POST或者GET的方式发生就可以了

 

 

posted @ 2018-06-01 14:41  孤独的DNA  阅读(2998)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3