Javascript 根据日期动态删除列表项的代码
我正在寻找代码(HTMl、CSS或javascript)或任何方法来解决我的问题。我最近受命帮助公司网站的设计和功能。有一个页面将列出员工在一年中将参加的活动列表。例如:Javascript 根据日期动态删除列表项的代码,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在寻找代码(HTMl、CSS或javascript)或任何方法来解决我的问题。我最近受命帮助公司网站的设计和功能。有一个页面将列出员工在一年中将参加的活动列表。例如: <div class="container3"> <div class="accordion"> <dl> <dt> <a href="#accordion1" ar
<div class="container3">
<div class="accordion">
<dl>
<dt>
<a href="#accordion1" aria-expanded="false" aria-controls="accordion1" class="accordion-title accordionTitle js-accordionTrigger">Travel Territory</a>
</dt>
<dd class="accordion-content accordionItem is-collapsed" id="accordion1" aria-hidden="true">
<p><li>Test 1</li>
<li>Test 2</li></p>
</dd>
<dt>
<a href="#accordion2" aria-expanded="false" aria-controls="accordion2" class="accordion-title accordionTitle js-accordionTrigger">Catch me at these schools!</a>
</dt>
<dd class="accordion-content accordionItem is-collapsed" id="accordion2" aria-hidden="true">
<p><ul id="myList">
<li>03/24/2018 at Upper Darby High School 1</li>
<li>03/24/2019 at Upper Darby High School 2</li>
</ul>
</p>
</dd>
</dl>
</div>
</div>
测试1
测试2
- 2018年3月24日上达比高中1
- 2019年3月24日上达比中学2
是否有任何代码可以在该列表的元素通过后删除它们?还是我必须每天手动将其从列表中删除
我不反对重新创建整个列表的想法,所以任何事情都会有帮助!
提前感谢您的帮助 您可以编写Javascript函数并使用
var list=document.getElementById(“myList”)代码>以获取列表。
您可以使用
list.removeChild(list.childNodes[0])代码>
您可以使用css选择器在list.removeChild()中指定li元素。您可以编写Javascript函数并使用
var filterFunc = function (parentElm, yearToCheck) {
var listElms = $(parentElm).children();
var count = listElms.length;
for (var i=0 ; i < count; i++ ){
var data = $(listElms[i]).html();
var dateText = data.split(" ")[0];
var year = new Date(dateText).getFullYear();
if(year != yearToCheck) {
$(listElms[i]).remove();
}
}
}
filterFunc(parentElement, "2018");
var list=document.getElementById(“myList”)代码>以获取列表。
您可以使用
list.removeChild(list.childNodes[0])代码>
您可以使用css选择器在list.removeChild()中指定li元素。var filterFunc=function(parentElm,yearToCheck){
var filterFunc = function (parentElm, yearToCheck) {
var listElms = $(parentElm).children();
var count = listElms.length;
for (var i=0 ; i < count; i++ ){
var data = $(listElms[i]).html();
var dateText = data.split(" ")[0];
var year = new Date(dateText).getFullYear();
if(year != yearToCheck) {
$(listElms[i]).remove();
}
}
}
filterFunc(parentElement, "2018");
var listElms=$(parentElm).children();
var count=listElms.length;
对于(变量i=0;i
var filterFunc=函数(parentElm,yearToCheck){
var listElms=$(parentElm).children();
var count=listElms.length;
对于(变量i=0;i
首先让我们为您的ul添加一个id以便于访问。(“myList”)
然后:
我将日期格式从您编写的(MM/DD/YYYY)更改为适合日期类的格式,然后为其创建日期,并将其与当前时间进行比较
如果当前时间小于我们正在检查的日期,则我们会将其保留在新数组中,反之亦然
最后,我们将过滤后的项目添加到列表中
希望它有帮助首先让我们为您的ul添加一个id以便于访问。(“myList”)
然后:
我将日期格式从您编写的(MM/DD/YYYY)更改为适合日期类的格式,然后为其创建日期,并将其与当前时间进行比较
如果当前时间小于我们正在检查的日期,则我们会将其保留在新数组中,反之亦然
最后,我们将过滤后的项目添加到列表中
希望它有助于通过父元素“ul”。在元素ul中放入一些class或id属性,比如..
和parentElement=$(“#check”)传递父元素“ul”。在元素ul中放入一些class或id属性,如..
和parentElement=$(“#check”)谢谢您的帮助。我仍然有点小麻烦,我找不到问题。这是我的清单。我已经在上面的问题中更新了我的列表。即使日期回到2018年3月,我也无法隐藏第一颗子弹。想法。@Rob你好Rob,我的代码有点问题,“filteredList”中有一个输入错误,我是这样输入的:“filterdList”,我编辑了我的答案,并用你的HTML进行了测试,效果很好。你好Kavian,谢谢你的回复。我仍然有问题。我已将我的代码和您的脚本复制到JSFIDLE中,无法重现您的成功。你有没有想过我会错过什么?@Rob你有没有调用这个函数?如果您有问题,请给我jsfiddle链接,我相信我在加载网页时调用了它。谢谢你。我仍然有点小麻烦,我找不到问题。这是我的清单。我已经在上面的问题中更新了我的列表。即使日期回到2018年3月,我也无法隐藏第一颗子弹。想法。@Rob你好Rob,我的代码有点问题,“filteredList”中有一个输入错误,我是这样输入的:“filterdList”,我编辑了我的答案,并用你的HTML进行了测试,效果很好。你好Kavian,谢谢你的回复。我仍然有问题。我已将我的代码和您的脚本复制到JSFIDLE中,无法重现您的成功。你有没有想过我会错过什么?@Rob你有没有调用这个函数?如果您有问题,请给我jsfiddle链接,我相信我在加载网页时调用了它。