Javascript Jquery Calendar-.attr(';id';)获取错误的值
我想通过将日历创建功能中的Javascript Jquery Calendar-.attr(';id';)获取错误的值,javascript,jquery,jquery-mobile,Javascript,Jquery,Jquery Mobile,我想通过将日历创建功能中的div id放在标题文本中来设置日程标题中的日期 我得到的id如下$('.dayNumberCellValue').attr('id'),但我有一个问题,当您点击日历中的“天”时,所有天的日期都是相同的,“27”(这是我日历的起始日期)。在我看来,$('.dayNumberCellValue').attr('id')的日期相同,但是为什么,如果日历必须在所有单元格中只显示“27”日期,那么日历如何工作良好 点击功能->> $('.div-cell').t
div id
放在标题文本中来设置日程标题中的日期
我得到的id
如下$('.dayNumberCellValue').attr('id')代码>,但我有一个问题,当您点击日历中的“天”时,所有天的日期都是相同的,“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);}
});
$('.div单元格').tap(函数(){
var i;
var myDate2;
对于(i=0;i<42;i++){
$('#'+i+'dayCell')。removeClass('tapped');
}
$(this).toggleClass(
"抽头";;
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);}
函数setCalendar(){
var cTime=新日期();
var myDate=months[cTime.getMonth()]+“”+cTime.getFullYear();
var myDate2=cTime.getDate()+“”+months[cTime.getmonths()];
$('#MCalendar header h4')。文本(myDate);
$('#MSchedule header h4')。文本(“Schedule-”+myDate2)
var monthView=新阵列(42);
var firstDayOfMonth=新日期(cTime.getFullYear(),cTime.getMonth(),1);
while(firstDayOfMonth.getDay()!=1){
每月第一天添加天数(-1);
}
var i;
对于(i=0;i
myDate2 = $('.dayNumberCellValue').attr('id');
将始终获取匹配元素的id
值(文档中从顶部开始的类为“dayNumberCellValue”的第一个元素)
您尚未显示标记,但如果所需的元素位于点击的元素内,则在tap
处理程序中,您可以找到如下内容:
myDate2 = $(this).find('.dayNumberCellValue').attr('id');
这将查找此
元素中的第一个“dayNumberCellValue”元素,点击该元素将是您正在观看点击
事件的元素
离题:你说你总是得到“27”,这意味着你使用“27”作为元素的id
。虽然这是(HTML5),但它过去是,现在仍然是。我建议不要使用以数字开头的id。事实上,我想我可能会使用a来存储日期,而不是id
$('.dayNumberCellValue')
选择器可能会返回一个列表。您可以循环元素并完成您的工作。谢谢,您的回答真的救了我:)我开始使用“data-*”,也谢谢:)@Sergio:很高兴这有帮助!最好,