将json格式转为url参数格式的方法(xjl456852整理修改)
2024-08-30 20:05:08
测试页面:
<html>
<head>
<script type="text/javascript" src="jquery-1.11.3.min.js"></script>
</head>
<body>
<div id="div1">
<button onclick="test1()">
t1
</button>
<button onclick="test2()">
t2
</button>
<button onclick="test3()">
t3
</button>
</div>
</body>
<script type="text/javascript">
var parseParam = function(param, key) {
var paramStr = "";
if (typeof param == 'string' || typeof param == 'number' || typeof param == 'boolean') {
paramStr += "&" + key + "=" + encodeURIComponent(param);
} else {
$.each(param, function(i,tmp) {
var k = key == null ? i : key + (param instanceof Array ? "[" + i + "]" : "." + i);
paramStr += '&' + parseParam(tmp, k);
});
}
return paramStr.substr(1);
};
function test1() {
console.log(parseParam({"a":"12","b":123}));
}
function test2() {
console.log(parseParam({a:"12",b:123},"user"));
}
function test3() {
console.log(parseParam([1,2,3],"hh"));
}
</script>
</html>
测试结果:
a=12&b=123
user.a=12&user.b=123
hh[0]=1&hh[1]=2&hh[2]=3
最新文章
- c++2008 并行配置文件和获取字典的所有key的方法
- Nunit单元测试的使用
- JSP的笔记
- UFLDL实验报告2:Sparse Autoencoder
- N个任务掌握java系列之统计一篇文章中单词出现的次数
- Asp.net获取用户名和IP
- C# ^ 运算符和 || 运算符的区别
- AOP与动态代理有什么联系
- FLASH和EEPROM的最大区别
- 错误Fatal error: Call to undefined function mb_strlen()的解决办法
- SpringBoot(三):springboot启动参数
- .Net Core 学习之路-基础
- java的制作";时间账本";
- 三、调试IIS启动域名配置
- opencart3属性attribute实现换行等简单html代码
- Python request库与爬虫框架
- kibana简单使用——elaticsearch的文档,索引的CRUD操作
- 【拓扑排序】烦人的幻灯片(slides)
- Confluence 6 后台中的默认空间模板设置
- 安装ElasticSearch5.5.2 注意事项
热门文章
- java 学习书籍
- mysql主从同步异常原因及恢复
- 贪心 Codeforces Round #309 (Div. 2) B. Ohana Cleans Up
- Tenegrad评价函数 分类: 图像处理 Opencv 2014-11-12 20:46 488人阅读 评论(0) 收藏
- iOS生成PDF的关键代码-备忘
- iOS9导入高德地图报错App Transport Security has blocked...
- Mybatis 分页插件 PageHelper
- VS2015 update3 安装 asp.net core 失败
- 合并百度影音的离线数据 with python 2.2 bdv格式的更新
- opencv-flag