我正在尝试从URL获取一些参数并将它们传递给另一个函数。
用于获取参数的函数是这样的:
function getUrlVars(callback) {
var urlVars = {};
var urlparts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
urlVars[key] = value;
});
callback(urlVars);
}
它得到的参数很好。 urlVars应该传递给的函数,如下所示:
document.addEventListener('done', function() {
var projSelect = document.getElementById('projectSelection');
projSelect.value = urlVars[0];
});
});
};
我像这样调用两个函数:
window.onload=function(){
getUrlVars(selectBox(urlVars));}
所以我要做的就是根据URL中的参数设置选择框的值。但是我得到一个错误,告诉我“ urlVars” ist未定义。
坦白地说,我尽全力。谁能告诉我我做错了什么?
您遇到的问题是,当您为window.onload
定义方法时,您传递的是脚本中任何地方都未定义的参数。
此外,您似乎想将回调方法传递给urlVars
,但是您要传递参数?您提供的代码很难分辨。
为什么不从选择框中获取所需的参数,然后将其发送给所需的方法?