Javascript 使用jQuery隐藏基于id值的元素
我有一个事件列表,我将每个事件的id设置为过期日期,因此当日期小于当前日期时,元素将被隐藏。您可以在下面看到我的代码,看起来我正在丢失dateContent变量的值,该变量是在我的each函数之外定义的: html:Javascript 使用jQuery隐藏基于id值的元素,javascript,jquery,each,Javascript,Jquery,Each,我有一个事件列表,我将每个事件的id设置为过期日期,因此当日期小于当前日期时,元素将被隐藏。您可以在下面看到我的代码,看起来我正在丢失dateContent变量的值,该变量是在我的each函数之外定义的: html: 事件1 2016年4月29日 明尼阿波利斯会议中心 明尼苏达州明尼阿波利斯市 659号展位 事件2 2015年11月4日至5日 明尼阿波利斯会议中心 明尼苏达州明尼阿波利斯市 659号展位 $(函数(){ 今日var 风险年 风险月 var monthLength var
- 事件1
- 2016年4月29日
- 明尼阿波利斯会议中心
- 明尼苏达州明尼阿波利斯市
- 659号展位
- 事件2
- 2015年11月4日至5日
- 明尼阿波利斯会议中心
- 明尼苏达州明尼阿波利斯市
- 659号展位
$(函数(){
今日var
风险年
风险月
var monthLength
var日
日期内容变量
函数currentDate(){
var today=新日期();
var year=today.getFullYear();
var month=today.getMonth()+1;
var monthLength=month.toString().length;
var day=today.getDate();
如果(月长==1){
dateContent=$('.today')。追加(年)。追加('0'+月)。追加(日);
}否则{
dateContent=$('.today')。追加(年)。追加(月)。追加(日);
}
}
currentDate();
$('.event list')。每个(函数(索引){
if($(this.attr('id')
我想您希望dateContent保留当前日期。但是,您要做的是将当前日期(例如20160410)设置为.today,并且追加的返回值是一个DOM元素,而不是值20160410
因此,即使与attr('id')进行比较也不起作用。我认为您希望dateContent保留当前日期。但是,您要做的是将当前日期(例如20160410)设置为.today,并且追加的返回值是一个DOM元素,而不是值20160410
因此,即使是与attr('id')的比较也不起作用。用该函数替换currentDate函数,以获得预期格式的字符串形式的dateContent。请注意,getFullYear、getMonth和getDate返回数字,因此如果要保留格式,则不应直接添加它们
function currentDate() {
var today = new Date();
var year = today.getFullYear();
var month = today.getMonth()+1;
var monthLength = month.toString().length;
var day = today.getDate();
if (monthLength == 1) {
dateContent = "" + year + "0" + month + day;
} else {
dateContent = "" + year + month + day;
}
}
将currentDate函数替换为该函数,以获得预期格式的字符串形式的dateContent。请注意,getFullYear、getMonth和getDate返回数字,因此如果要保留格式,则不应直接添加它们
function currentDate() {
var today = new Date();
var year = today.getFullYear();
var month = today.getMonth()+1;
var monthLength = month.toString().length;
var day = today.getDate();
if (monthLength == 1) {
dateContent = "" + year + "0" + month + day;
} else {
dateContent = "" + year + month + day;
}
}
$(函数(){
今日var
风险年
风险月
var monthLength
var日
日期内容变量
函数currentDate(){
var today=新日期();
var year=today.getFullYear();
var month=today.getMonth()+1;
var monthLength=month.toString().length;
var day=today.getDate();
如果(月长==1){
$('.today').append(年)。append('0'+月)。append(日);
dateContent=年+0'+月+日;
}否则{
$('.today').append(年).append(月).append(日);
日期内容=年+月+日;
}
}
currentDate();
$('.event list')。每个(函数(索引){
console.log(dateContent);
console.log($(this.attr('id'));
if($(this.attr('id')
$(函数(){
今日var
风险年
风险月
var monthLength
var日
日期内容变量
函数currentDate(){
var today=新日期();
var year=today.getFullYear();
var month=today.getMonth()+1;
var monthLength=month.toString().length;
var day=today.getDate();
如果(月长==1){
$('.today').append(年)。append('0'+月)。append(日);
dateContent=年+0'+月+日;
}否则{
$('.today').append(年).append(月).append(日);
日期内容=年+月+日;
}
}
currentDate();
$('.event list')。每个(函数(索引){
console.log(dateContent);
console.log($(this.attr('id'));
if($(this.attr('id')
.append()
用于元素,而不是连接字符串。.append()
用于元素,而不是连接字符串。谢谢!这很有效。将dateContent作为字符串获取是我一直在努力解决的问题。我试过年+月+日,但那只会把数字加在一起。谢谢!这很有效。将dateContent作为字符串获取是我一直在努力解决的问题。我尝试了年+月+日,但那只是将数字相加。
<script>
$(function () {
var today
var year
var month
var monthLength
var day
var dateContent
function currentDate() {
var today = new Date();
var year = today.getFullYear();
var month = today.getMonth() + 1;
var monthLength = month.toString().length;
var day = today.getDate();
if (monthLength == 1) {
$('.today').append(year).append('0' + month).append(day);
dateContent = year + '0' + month + day;
} else {
$('.today').append(year).append(month).append(day);
dateContent = year + month + day;
}
}
currentDate();
$('.event-list').each(function (index) {
console.log(dateContent);
console.log($(this).attr('id'));
if ($(this).attr('id') < dateContent) {
$(this).hide();
}
});
});