gpt4 book ai didi

javascript - Jquery Calendar - .attr ('id' ) 得到错误的值

转载 作者:行者123 更新时间:2023-11-30 13:31:17 24 4
gpt4 key购买 nike

我想通过将日历创建函数中的 div id 放入表头文本来在计划表头中设置日期。

我得到 id 这样的 $('.dayNumberCellValue').attr('id');,但是我有一个问题,当你点击 day日历,我得到所有日子的相同日期,“27”(这是我日历的开始日期)。在我看来,在 $('.dayNumberCellValue').attr('id'); 中,日期相同,但为什么,如果他必须只显示“所有单元格中的 27"日期?

点击功能->>

        $('.div-cell').tap(function() {
var i;
var myDate2;
for (i = 0; i < 42; i++) {
$('#' + i + 'dayCell').removeClass('tapped');

}

$(this).toggleClass(
'tapped');

if($(this).hasClass('tapped')){


myDate2 = $('.dayNumberCellValue').attr('id');
$('#MSchedule header h4').text("S - "+myDate2);}

});

日历创建->

function setCalendar() {

var cTime = new Date();
var myDate = months[cTime.getMonth()] + " " + cTime.getFullYear();
var myDate2 = cTime.getDate() + " " + months[cTime.getMonth()];


$('#MCalendar header h4').text(myDate);
$('#MSchedule header h4').text("Schedule - " + myDate2)

var monthView = new Array(42);

var firstDayOfMonth = new Date(cTime.getFullYear(), cTime.getMonth(), 1);

while (firstDayOfMonth.getDay() != 1) {

firstDayOfMonth.addDays(-1);

}

var i;

for (i = 0; i < monthView.length; i++) {


startDate = new Date(firstDayOfMonth);

monthView[i] = startDate.addDays(i);

}


for(var day=0;day<monthView.length;day++){

var needDay=monthView[day].getDate();

var cell = $('#'+day+'dayCell');
var content = '<div class="dayNumberCellValue" id=' +needDay+ '>'
+ monthView[day].getDate()
+ '</div>';
cell.append(content);}

最佳答案

这一行:

myDate2 = $('.dayNumberCellValue').attr('id');

将始终获取第一个 匹配元素(文档中具有类“dayNumberCellValue”的第一个元素,从顶部开始)的id 值。

你还没有显示你的标记,但如果你想要的元素在点击元素内,那么在你的 tap 处理程序中你可以像这样找到它:

myDate2 = $(this).find('.dayNumberCellValue').attr('id');

这会在 this 元素 中查找第一个“dayNumberCellValue”元素,点击它就是您正在观看 tap 事件开始。


题外话:您说过您总是得到“27”,这表明您使用“27”作为元素的 id。虽然那是 recently been allowed (通过 HTML5),它是 invalid in HTML 4 and earlier , 并且仍然是 invalid in CSS .我建议不要使用以数字开头的 ID。事实上,我想我可能会使用 data-* attribute存储日期而不是 id

关于javascript - Jquery Calendar - .attr ('id' ) 得到错误的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6678279/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com