У меня есть такая таблица:
._________._________.
| | |
a | a1 a2 | a3 |
|_________| b5 |
| | |
b | b4 | |
|_________| |
| | |
c | c7 c8 c9| |
|_________|_________|
Как вы могли догадаться:
- 2 столбца
- Первый столбец состоит из нескольких строк
- Вторые столбцы охватывают всю длину
- Левый столбец состоит из ячеек, являющихся источниками. Каждый источник является сортируемым, который содержит несколько
<div>
- Правый столбец это цель: только 1
<div>
Моя цель - иметь возможность включить перетаскивание между любой левой строкой вправо и из правой колонки в соответствующую левую.
фрагмент:
private _src: HTMLElement[];
private _target: HTMLElement;
constructor(el: HTMLElement) {
this._src = $(el).find('.src').get();
this._target = $(el).find('.target').get(0);
this._src.map(ed => {
Sortable.create(ed, {
group: {
name: 'src' + ed.id,
put: 'target',
pull: true,
},
});
Sortable.create(this._target, {
group: {
name: 'target',
put: 'src' + ed.id,
pull: true,
},
});
});
}
В этой конфигурации можно перемещать элементы слева направо, но элементы справа не ограничены и могут перемещаться в любые левые ряды, что не соответствует действительности.
Как я мог этого достичь?