jquery 删除链接并根据日期添加类

yv5phkfx  于 2023-08-04  发布在  jQuery
关注(0)|答案(2)|浏览(84)

我有一个用html和php构建的日历,我有下面的格式来列出月份链接:

<ul class="month-list">
        <li class="nolink">Jan</li>
        <li class="nolink">Feb</li>
        <li class="nolink">Mar</li>
        <li><a href="?month=April">Apr</a></li>
        <li><a href="?month=May">May</a></li>
        <li><a href="?month=June">Jun</a></li>
        <li><a href="?month=July">Jul</a></li>
        <li><a href="?month=August">Aug</a></li>
        <li><a href="?month=September">Sep</a></li>
        <li><a href="?month=October">Oct</a></li>
        <li><a href="?month=November">Nov</a></li>
        <li><a href="?month=December">Dec</a></li>
    </ul>

字符串
我需要用jQuery做日期比较,如果月份已经过去,就删除链接,并添加nolink类,但无法找到正确的语法。
我正在寻找基本上可以做到这一点的语法:如果Month =当前月份,则删除前几个月的链接并添加类“nolink”
有人有什么建议吗?

wj8zmpe1

wj8zmpe11#

使用:lt() jQuery选择器和JS的new Date().getMonth()很容易:

**LIVE DEMO**第一个字符

var m = new Date().getMonth(); // Returns the curr. month "zero" based (0 -> 11)

$('.month-list li:lt('+ m +')').each(function(){
  $('a', this).contents().unwrap('a').parent('li').addClass('nolink');
});

字符串
要使用所有月份而不是var m = new Date().getMonth();进行测试,请在演示中手动设置从011的值。这将是一个有点棘手,但只要考虑当前月份是a value -1

e0bqpujr

e0bqpujr2#

在此代码示例中是否也可以连接日期?我正试图一过这个月的这一天就删除议程项目。我有它的工作现在几个月,感谢这篇文章,但我现在必须连接到该月的一天,让它删除,在这一天过去后。
举例来说:我有三个议程项目。7月26日一次,7月29日一次,8月2日一次。
现在是7月31日,所以我希望前两个议程项目自动删除。
例如,您将得到:

<ul class="month-list">
    <li><a href="?day=26?month=July">Event 1</a></li>
    <li><a href="?day=29?month=July">Event 2</a></li>
    <li><a href="?day=2?month=August">Event 3</a></li>
</ul>

<script>
var d = new Date(),
m = d.getMonth(), 
day = d.getDay();

$('.month-list li:lt('+ m +')').each(function(){
$('a', this).contents().unwrap('a').parent('li').addClass('nolink');
});
</script>

字符串

相关问题