Javascript 如何从JavasScript/Jquery中的location/URL值创建对象
我需要一种从位置值创建Javascript 如何从JavasScript/Jquery中的location/URL值创建对象,javascript,jquery,object,Javascript,Jquery,Object,我需要一种从位置值创建对象的方法。例如,如果我有以下值: “?syear=2007&sind=0&正文=S&类型=B&bn=1” 这是我从doc.location.href()获得的 我想提出以下目标: myObject = { syear : '2007', snid : '0', body : 's', type : 'B', bn : '1', }; 谢谢 D 进展 由于某种原因,我没能让这辆车进去工作。我认为这是因为我的代码在firefox扩展中运
对象的方法。例如,如果我有以下值:
“?syear=2007&sind=0&正文=S&类型=B&bn=1”
这是我从doc.location.href()获得的代码>
我想提出以下目标:
myObject = {
syear : '2007',
snid : '0',
body : 's',
type : 'B',
bn : '1',
};
谢谢
D
进展
由于某种原因,我没能让这辆车进去工作。我认为这是因为我的代码在firefox扩展中运行,在文档上下文之外。或者它可能与jQuery.noConflict()有关代码>(我不知道)
但是,我最终需要从中取出函数并对其进行一点编辑,以便让它为我工作:
function getURLParam(URL, strParamName){
var qString;
var returnVal = new Array();
if (URL==null) return null;
if ( URL.indexOf("?") > -1 ){
var strQueryString = URL.substr(URL.indexOf("?")+1);
qString = strQueryString.split("&");
}
else {
return null;
}
for (var i=0;i<qString.length; i++){
if (escape(unescape(qString[i].split("=")[0])) == strParamName){
returnVal.push(qString[i].split("=")[1]);
}
}
if (returnVal.length==0) return null;
else if (returnVal.length==1) return returnVal[0];
else return returnVal;
}
函数getURLParam(URL,strParamName){
var-qString;
var returnVal=新数组();
if(URL==null)返回null;
if(URL.indexOf(“?”>-1){
var strQueryString=URL.substr(URL.indexOf(“?”)+1);
qString=strQueryString.split(“&”);
}
否则{
返回null;
}
对于(var i=0;i这可能有用:
使用上面的方法,您可以轻松地构造hash,hash应该完全满足您的需要
jQuery.url.setUrl('http://www.legis.state.pa.us/cfdocs/billinfo/bill_history.cfm?syear=2007&sind=0&body=S&type=B&bn=1').param('syear');
返回2007
这正是我要找的。源代码非常小。谢谢!