Выберите все td в нескольких строках на основе выбора ⇐ Jquery
-
Гость
Выберите все td в нескольких строках на основе выбора
Мне нужно выбрать все td в моей таблице с помощью события перетаскивания. Я пытаюсь создать диапазон дат на основе моего первого выбранного td до последнего выбранного td, но они могут охватывать несколько строк. На данный момент я использую nextUntil() с andSelf(), чтобы включить последний выбранный, но он выбирает только td внутри текущего tr. Ниже приведен пример моего кода. Любая помощь, пожалуйста.
this.BindCalendarMouseDrag = function () { вар isMouseDown = ложь; вар выделен; вар selectedDays = []; $(".tabCalendarContainer tr.trCalWeek td") .mousedown(функция () { isMouseDown = правда; $(this).addClass("выделено"); isHighlighted = $(this).hasClass("выделено"); selectedDays.push($(this)); вернуть ложь; // предотвращаем выделение текста }) .mouseover(функция () { если (isMouseDown) { $(this).addClass("выделено", isHighlighted); вар firstSelectedDay = selectedDays[0]; firstSelectedDay.nextUntil($(this)).andSelf().add($(this)).addClass("выделено", isHighlighted); selectedDays.push($(this)); } }) .bind("selectstart", function () { вернуть ложь; }); $(документ).mouseup(функция () { isMouseDown = ложь; //оповещение(selectedDays.length); }); };
Мне нужно выбрать все td в моей таблице с помощью события перетаскивания. Я пытаюсь создать диапазон дат на основе моего первого выбранного td до последнего выбранного td, но они могут охватывать несколько строк. На данный момент я использую nextUntil() с andSelf(), чтобы включить последний выбранный, но он выбирает только td внутри текущего tr. Ниже приведен пример моего кода. Любая помощь, пожалуйста.
this.BindCalendarMouseDrag = function () { вар isMouseDown = ложь; вар выделен; вар selectedDays = []; $(".tabCalendarContainer tr.trCalWeek td") .mousedown(функция () { isMouseDown = правда; $(this).addClass("выделено"); isHighlighted = $(this).hasClass("выделено"); selectedDays.push($(this)); вернуть ложь; // предотвращаем выделение текста }) .mouseover(функция () { если (isMouseDown) { $(this).addClass("выделено", isHighlighted); вар firstSelectedDay = selectedDays[0]; firstSelectedDay.nextUntil($(this)).andSelf().add($(this)).addClass("выделено", isHighlighted); selectedDays.push($(this)); } }) .bind("selectstart", function () { вернуть ложь; }); $(документ).mouseup(функция () { isMouseDown = ложь; //оповещение(selectedDays.length); }); };
Мобильная версия