我需要检查一个空的查询字符串的值但是我做错了什么:( 当url是index.php例如,我需要它打开#home但是如果它是index.php?m = 1& s = 1则打开#page_1_1
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;
}
var m = getUrlVars()["m"];
var s = getUrlVars()["s"];
if((m!='')&&(s!='')){
$('#page_'+m+'_'+s+'').show();
}
else{ $('#home').show(); }
答案 0 :(得分:1)
m
&amp;如果查询字符串为空或不包含这些值,则s
将不确定。您需要将支票更改为以下内容:
if(m && s) {
$('#page_'+m+'_'+s+'').show();
} else {
$('#home').show();
}
如果if
或false
从查询字符串中省略,或者其中任何一个为空(例如{{3},则上面的m
语句将评估为s
}})