我快速写了这篇文章,因为我遇到了问题。如果代码看起来很乱,我道歉。 tbody不可点击吗?没有警报,我没有看到任何明显的错误
相关的php
echo '<table>';
while ($row = mysql_fetch_array($result)) {
echo
'<tbody class = "reserveAPickupAppointmentRoommateAppointment"
id = "reserveAPickupAppointmentRoommateAppointment">
<tr>
<td>'
.$row["name"].
'</td>
<td>
<span class = "reserveAPickupAppointmentLocaton"
id="reserveAPickupAppointmentLocaton">'
.$row["location"].
'</span>
</td>
<td>
<span class = "reserveAPickupAppointmentSubLocaton"
id="reserveAPickupAppointmentSubLocaton">'
.$row["subLocation"].
'</span>
</td>
</tr>
<tr>
<td>
<span class = "reserveAPickupAppointmentStartTime"
id="reserveAPickupAppointmentStartTime">'
.$row["startTime"].
'</span> -
<span class = "reserveAPickupAppointmentEndTime"
id="reserveAPickupAppointmentEndTime">'
.$row["endTime"].
'</span>
</td>
<td>
<span class = "reserveAPickupAppointmentDate"
id="reserveAPickupAppointmentDate">'
.$row["date"].
'</span>
</td>
</tr>
</tbody>';
}
echo '</table>';
jquery包含在我的文档ready functon
中 $("#reserveAPickupAppointmentRoommateAppointment").click (function() {
alert ("TEST");
});
答案 0 :(得分:3)
您的ID与您的班级相匹配的事实有点吓人。我不知道php
,但是while
似乎您在循环中创建了多个tbody
。
这意味着您有多个ID为reserveAPickupAppointmentRoommateAppointment
的元素。如果是这样,它就是无效的,很可能只有第一个将被选择器匹配。
要直接回答您的问题,是的tbody
可以有一个处理程序`,只要您允许该事件冒泡到它。
不知道你的其他代码,我猜你想要桌面上的ID,然后选择它下面的所有tbody
元素。
$(document).ready(function() {
$('#reserveAPickupAppointmentRoommateAppointment tbody').click(function() {
alert ("TEST");
});
});
或者您可以直接按类选择:
$(function() {
$('.reserveAPickupAppointmentRoommateAppointment').click(function() {
alert ("TEST");
});
});
我将上面的代码更新为放在jQuery DOM就绪处理程序中。你会注意到这两个例子略有不同。它们基本相同,第二个是第一个的捷径。还有其他一些细微差别,但这里没有什么可担心的。
另请注意,有些人将以下内容误认为是DOM就绪代码:
(function() {
// I'm not a DOM ready construct
})();
答案 1 :(得分:0)
你不能使用带有TABLE,TBODY或TR的onclick,但你可以使用jQuery子选择器将它附加到TD