Учитывая следующий HTML:Почему мой селектор jQuery не возвращает никаких элементов?
<table>
<tbody>
<tr data-week="0">
<td class="timeSlot" data-day="0" data-timeslotid="0"></td>
<td class="timeSlot" data-day="0" data-timeslotid="1"></td>
<td class="timeSlot" data-day="0" data-timeslotid="2"></td>
<td class="timeSlot" data-day="0" data-timeslotid="3"></td>
<td class="timeSlot" data-day="0" data-timeslotid="4"></td>
<td class="timeSlot" data-day="1" data-timeslotid="0"></td>
<td class="timeSlot" data-day="1" data-timeslotid="1"></td>
<td class="timeSlot" data-day="1" data-timeslotid="2"></td>
<td class="timeSlot" data-day="1" data-timeslotid="3"></td>
<td class="timeSlot" data-day="1" data-timeslotid="4"></td>
</tr>
</tbody>
</table>
и сценарий:
$(document).ready(function() {
var week = $("table tbody tr[data-week='0']");
var dayTimeSlots = $(".timeSlot[data-day='0']", week);
console.log($(dayTimeSlots).length); // <-- Gives me 5
var timeSlot = $("[data-timeslotid='1']", dayTimeSlots);
console.log($(timeSlot).length); // <-- Gives me 0??
var temp = $("[data-timeslotid='1']", week);
console.log($(temp).length); // <-- gives me 2
});
Почему я не могу получить этот единственный элемент из моего JQuery подмножества?
Это пример ошарашен, но в моем коде у меня есть около 500 000 тд элементов, и мне нужно отфильтровать его до самого узкого подмножества, которое я могу по соображениям производительности.
Fiddle: http://jsfiddle.net/wp36nLnw/4/
Отлично! Это исправило это. – Scottie