Javascript 分配ID';s到表列并添加单击功能
我正在尝试找出日历中的所有日子是否都有ID,因为我计划在那天访问数据库中的文档。我的问题是,只有一个ID被分配给表列,并且在多次尝试后单击它会增加我收到的警报消息的数量…我到底错过了什么/做错了什么 Php日历部分(天)Javascript 分配ID';s到表列并添加单击功能,javascript,php,jquery,Javascript,Php,Jquery,我正在尝试找出日历中的所有日子是否都有ID,因为我计划在那天访问数据库中的文档。我的问题是,只有一个ID被分配给表列,并且在多次尝试后单击它会增加我收到的警报消息的数量…我到底错过了什么/做错了什么 Php日历部分(天) $list_day = 1; while($list_day <= $days_in_month){ $calendar.= '<td class="calendar-day">'; /* add in the day numb
$list_day = 1;
while($list_day <= $days_in_month){
$calendar.= '<td class="calendar-day">';
/* add in the day number */
$calendar.= '<div class="day-number" id = "day'.$list_day.'" onclick = displayDocuments()>'.$list_day.'</div>';
/** QUERY THE DATABASE FOR AN ENTRY FOR THIS DAY !! IF MATCHES FOUND, PRINT THEM !! **/
$calendar.= str_repeat('<p> </p>',2);
$calendar.= '</td>';
if($running_day == 6){
$calendar.= '</tr>';
if(($day_counter+1) != $days_in_month){
$calendar.= '<tr class="calendar-row">';
}
$running_day = -1;
$days_in_this_week = 0;
}
$days_in_this_week++;
$running_day++;
$day_counter++;
$list_day++;
}
检查这一点可以通过循环到每天都有的类来完成,在您的示例中:
daynumber
。然后提醒id查看它是否存在
HTML:
$calendar.= '<div class="day-number" id="day'.$list_day.'">'.$list_day.'</div>';
$(document).ready(function() {
$(".day-number").each(function() {
var currentid = $(this).attr("id");
alert(currentid);
});
});
可能的输出:
$calendar.= '<div class="day-number" id="day'.$list_day.'">'.$list_day.'</div>';
$(document).ready(function() {
$(".day-number").each(function() {
var currentid = $(this).attr("id");
alert(currentid);
});
});
- 第1天-第1天存在
- 第2天-第2天存在
因为您使用的是PHP,所以我无法在JSFIDLE上向您展示,但我希望这能帮助你检查每天是否有ID。你在html中引用ID属性的值,然后再试一次如何?哇…在那里添加引号不会解决这个问题,因为我认为我只需要在名称上用空格分隔开的引号…谢谢,但我想知道为什么警报消息仍然重复不止一次重复多次,因为一旦您单击一天,它就会启动函数
displayDocuments()
,此函数中有两个警报<代码>第一天代码>和第2天代码>。它会重复,因为click()函数会指定一个click侦听器。查看文档:我不知道每个函数的用法……这很方便。尽管出于某种原因,$(this).id在我尝试时返回undefined,因此我只是指定了id'sAh,因为您的PHP不正确,让我更改我的答案。您没有正确设置id,id=day。$list\u day。
与id=day1相同,没有被引用。将其更改为:id=“day”。$list\u day.”“
与id=“day1”相同。哦,对不起,我忘了更新问题……我更新了它,它仍在重复。如果您使用我现在的答案中所写的HTML更改您的HTML,它是否仍然输出未定义的id,或者它是否有效?