将json格式转为url参数格式的方法(xjl456852整理修改)

测试页面:
  1. <html>
  2. <head>
  3. <script type="text/javascript" src="jquery-1.11.3.min.js"></script>
  4. </head>
  5. <body>
  6. <div id="div1">
  7. <button onclick="test1()">
  8. t1
  9. </button>
  10. <button onclick="test2()">
  11. t2
  12. </button>
  13. <button onclick="test3()">
  14. t3
  15. </button>
  16. </div>
  17. </body>
  18. <script type="text/javascript">
  19. var parseParam = function(param, key) {
  20. var paramStr = "";
  21. if (typeof param == 'string' || typeof param == 'number' || typeof param == 'boolean') {
  22. paramStr += "&" + key + "=" + encodeURIComponent(param);
  23. } else {
  24. $.each(param, function(i,tmp) {
  25. var k = key == null ? i : key + (param instanceof Array ? "[" + i + "]" : "." + i);
  26. paramStr += '&' + parseParam(tmp, k);
  27. });
  28. }
  29. return paramStr.substr(1);
  30. };
  31. function test1() {
  32. console.log(parseParam({"a":"12","b":123}));
  33. }
  34. function test2() {
  35. console.log(parseParam({a:"12",b:123},"user"));
  36. }
  37. function test3() {
  38. console.log(parseParam([1,2,3],"hh"));
  39. }
  40. </script>
  41. </html>


测试结果:
a=12&b=123
user.a=12&user.b=123
hh[0]=1&hh[1]=2&hh[2]=3




posted @ 2017-05-26 18:21  三杯两盏淡酒  阅读(878)  评论(0编辑  收藏  举报