2011-08-19 34 views
4
var obj = { 
    'key': 'value', 
    'cheese':'bacon', 
    '&':'>' 
};  
var params = $.param(obj) 

console.log(params); // key=value&cheese=bacon&%26=%3E 

我该如何将params变成对象? (到底是什么)jquery把查询字符串变成对象

+0

所有的这些方法帮助你查找的字符串在一个单一的PARAM。我想要一个具有查询字符串的键和值的对象。 – tester

回答

5

你可以使用这样的东西。我不知道这个内置的jQuery。

function getUrlVars() { 
    if (!window.location.search) { 
     return({}); // return empty object 
    } 
    var parms = {}; 
    var temp; 
    var items = window.location.search.slice(1).split("&"); // remove leading ? and split 
    for (var i = 0; i < items.length; i++) { 
     temp = items[i].split("="); 
     if (temp[0]) { 
      if (temp.length < 2) { 
       temp.push(""); 
      } 
      parms[decodeURIComponent(temp[0])] = decodeURIComponent(temp[1]);   
     } 
    } 
    return(parms); 
}