javascript - 在特定日期范围内显示/隐藏元素的最佳方法

标签 javascript jquery

用例:

我有一个大约 1000 个项目的列表,并且希望有一个“日期范围过滤器”来显示/隐藏给定的 2 个日期之间的元素。

你会怎么做?

我正在考虑将带有“日期”或“时间戳”的选择器应用于每个元素,并在日期选择器范围的 onChange 上循环遍历所有元素。

这对您来说有意义吗?也许有人有这方面的例子? 我的大脑目前处于卡住模式,我需要一些灵感......

最佳答案

最好使用“过滤”功能。

您可以定义自己的返回值,避免使用循环。

$(function() {
    $("div[id]").filter(function(){
      var code = +$(this).prop("id").split("_")[1];
      var flag = false;
      
      if( code > 4 ){
        flag = true;
      }
      
      return flag;
    }).hide();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="test_1">1<div>
<div id="test_2">2<div>
<div id="test_3">3<div>
<div id="test_4">4<div>
<div id="test_5">5<div>
<div id="test_6">6<div>

关于javascript - 在特定日期范围内显示/隐藏元素的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46835758/

相关文章:

javascript - 如何使用相同的参数查询 Graphql 2 对象

javascript - 防止 XUL notificationBox 在点击按钮时关闭

javascript - 两次追加 DOM 元素 (jQuery)

javascript - 在使用 .replace() 之后,字符串无法选择元素(使用 jquery)

Javascript/Coldfusion 表单循环验证

javascript - jQuery 不断向 dom 添加 <li> 标签

javascript - 将 Vue 'moustache' 括号注入(inject) HTML 元素

javascript - ExtJs HTML 组件点击事件

php 或 javascript 正则表达式 - 将第一个字母和其余字符串作为 2 个单独的值返回

Javascript 将函数传递给参数?