我有一个页面,其中显示了很多div,并且需要具有通过url查询字符串和2个选择列表输入过滤这些div的能力。
我在它会在其中添加?dc = classname的地方工作,然后仅显示具有该类的div-下面的jquery:
<script type="text/javascript">
// Parse the URL parameter
function getParameterByName(name, url) {
if (!url) url = window.location.href;
name = name.replace(/[\[\]]/g, "\\$&");
var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, " "));
}
// Give the parameter a variable name
var dynamicContent = getParameterByName('dc');
$(document).ready(function() {
// Check if the URL parameter is apples
if (dynamicContent == 'westbury') {
$('.westbury').show();
}
// Check if the URL parameter is oranges
else if (dynamicContent == 'clifton') {
$('.clifton').show();
}
// Check if the URL parmeter is empty or not defined, display default content
else {
$('.listing-item').show();
}
});
</script>
我还需要通过以下两个选择列表显示/隐藏这些相同的div的能力-以及两个定位类。
<select id="area">
<option value="">Select Area</option>
<option value="westbury">Westbury</option>
<option value="clifton">Clifton</option>
</select>
<select id="category">
<option value="">Select Category</option>
<option value="cafe">cafe</option>
<option value="shop">shop</option>
</select>
因此,基本上,如果我访问该页面并且该页面包含在URL?dc = class中,则将显示该类的结果-然后,如果我通过选择列表选择了一个过滤器,则它可以根据以下内容覆盖和显示/隐藏div那个。
如果未选择任何内容或未在网址中显示任何内容,则可以显示所有内容。
谢谢!