Javascript 在jquery中通过URL传递1或2个查询字符串时出现问题
如果我选择在url上添加1或2个变量,我将尝试向页面添加一些自定义内容。问题是,我的函数只有在两个字符串都被传递的情况下才能工作,而不是在我只选择使用1的情况下。我想要这个选择。传递的两个字符串是“rescompany”和“locale” 回复:Javascript 在jquery中通过URL传递1或2个查询字符串时出现问题,javascript,jquery,Javascript,Jquery,如果我选择在url上添加1或2个变量,我将尝试向页面添加一些自定义内容。问题是,我的函数只有在两个字符串都被传递的情况下才能工作,而不是在我只选择使用1的情况下。我想要这个选择。传递的两个字符串是“rescompany”和“locale” 回复:index.html?locale=someplace&rescompany=Google $(document).ready(function() { function getUrlVars() { var vars = [
index.html?locale=someplace&rescompany=Google
$(document).ready(function() {
function getUrlVars() {
var vars = [],
hash;
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for (var i = 0; i < hashes.length; i++) {
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
}
if (document.location.search.length) {
var rescompany = getUrlVars()["rescompany"];
var locale = getUrlVars()["locale"];
if ((rescompany).length > 0) {
$(".addtores").css('visibility', 'visible');
$(".resname").append(decodeURIComponent(rescompany));
}
if ((locale).length > 0) {
$(".introduction strong span").css('display', 'inline-block');
}
}
$(文档).ready(函数(){
函数getUrlVars(){
var vars=[],
搞砸
var hashes=window.location.href.slice(window.location.href.indexOf('?')+1).split('&');
for(var i=0;i0){
$(“.addtores”).css(‘可见性’、‘可见’);
$(“.resname”).append(decodeURIComponent(rescompany));
}
如果((区域设置).length>0){
$(.introduction-strong-span”).css('display','inline-block');
}
}
如果我运行您的代码,我会收到以下错误消息:TypeError:rescompany未定义
(检查浏览器中的错误消息)
这意味着您的if测试(rescompany).length>0
错误。应将其替换为rescompany!==未定义的
因此,您的代码应该是这样的:
$(document).ready(function() {
function getUrlVars() {
var vars = [],
hash;
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for (var i = 0; i < hashes.length; i++) {
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
}
if (document.location.search.length) {
var vars = getUrlVars();
var rescompany = vars["rescompany"];
var locale = vars["locale"];
if (rescompany !== undefined) {
$(".addtores").css('visibility', 'visible');
$(".resname").append(decodeURIComponent(rescompany));
}
if (locale !== undefined) {
$(".introduction strong span").css('display', 'inline-block');
}
}
});
$(文档).ready(函数(){
函数getUrlVars(){
var vars=[],
搞砸
var hashes=window.location.href.slice(window.location.href.indexOf('?')+1).split('&');
for(var i=0;i
你答对了-我错过了这部分逻辑。感谢你的澄清!如果答案解决了你的问题,请始终将答案标记为正确。因此,每个人都知道问题已经解决。