您好, 我想让我的javascript识别每个页面上的文件夹。根据文件夹名称,我想使用if else语句将该文件夹名称添加到innerHTML中。我无法使用if else运行,否则使用if,else语句。
以下是HTML代码段:
<div id="countryVal"></div>
和javascript:
var outputData = document.getElementById('clothingVal');
if (window.location.search.search(/Men/)) {
document.getElementById('clothingVal');
outputData.innerHTML = outputData.innerHTML + ': ' + 'Australia';
}
else if (window.location.search.search(/Women/)) {
document.getElementById('clothingVal');
outputData.innerHTML = outputData.innerHTML + ': ' + 'New Zealand';
}
else {outputData.innerHTML = outputData.innerHTML + ': ' + '';
};
我们非常感谢任何建议。
答案 0 :(得分:0)
没有必要,但开关可能比其他地方更好。当你可能想要在未来使用新的过滤器时,我发现它们更易于管理。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/switch
但是保留当前代码应该清理变量以使其更具可读性。您还应该将此代码放在onload或onready语句中。而且我们 indexOf 胜过正则表达式(你需要逃回斜杠才能找到类似 / \ / Men \ // 的东西,这会变得混乱){{3 }}
这是未经测试的,但应该与您所追求的一致。
window.onload = function() {
var outputData = document.getElementById('clothingVal');
if ( window.location.indexOf("/Men/") != -1 ) {
outputData.innerHTML = outputData.innerHTML + ': ' + 'Australia';
} else if ( window.location.indexOf("/Women/") != -1 ) {
outputData.innerHTML = outputData.innerHTML + ': ' + 'New Zealand';
} else {
outputData.innerHTML = outputData.innerHTML + ': ' + '';
};
}