gpt4 book ai didi

javascript - 如何根据 URL 值隐藏 div 内容 - 多个字段

转载 作者:行者123 更新时间:2023-12-03 12:28:42 25 4
gpt4 key购买 nike

我有一个工作代码,可以根据 URL 值隐藏/显示内容。示例:

www.domain.com/?filter_brands=gucci

将显示适用于“gucci”的内容,其余内容将保持隐藏。

但是,如果网址获取其他字段/值,它将停止工作。示例:

www.domain.com/?filter_brands=gucci&query_type_brands=or

不起作用..我应该在javascript中更改什么,以便它读取第一个filter_brands值并忽略其余的..?非常感谢大家!

这是 JavaScript:

    $(document).ready(function() {
var brands = 'gucci';
var url = window.location.search;
brands = url.match(/filter_brands=(.*)/)[1];
showDiv(brands);
});
function showDiv(brands) {
$('.boxes').hide();
$('#' + brands).show();
}

这是 html:

<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="style.css" />
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
<script src="script.js"></script>
</head>
<body>
<div class="boxes" id="gucci">Gucci is awesome!</div>
<div class="boxes" id="versace">Versace is da bomb!</div>
<div class="boxes" id="dolce-gabanna">Dolce & Gabanna is cool!</div>
</body>
</html>

这是我在 fiddle 上的完整代码 http://jsfiddle.net/s7V26/

它不会隐藏 fiddle 上的内容,因为您需要使用 ?filter_brands=gucci 加载网址但代码有效..

最佳答案

我认为你需要一个更好的函数来获取查询字符串

function getParameterByName(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}

//基于这个答案 How can I get query string values in JavaScript?

showDiv(getParameterByName("filter_brands"));

关于javascript - 如何根据 URL 值隐藏 div 内容 - 多个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24047702/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com