Вот FiddleJQuery: Как перетащить несколько строк из одной таблицы в другую?
У меня есть таблица с перемещаемыми строками, которые несколько выбираемыми, но я хочу, чтобы перетащить их скопом в другую таблицу и оставлять их там - не будет добавляться в качестве дополнительных элементов к другой таблице, но делать что-то с информацией, то есть подавать форму.
Мой пример изначально основан на другом демо я нашел здесь: multi drag demo
Вот является HTML-код для основного примера этой проблемы.
<table class="DraggableThings">
<tr draggable='true'><td >Row 1</td></tr>
<tr draggable='true'><td >Row 2</td></tr>
<tr draggable='true'><td >Row 3 </td></tr>
</table>
<table id='menu_table'>
<tbody>
<tr>
<td class='droppableItem' >accomplished</td>
</tr>
</tbody>
</table>
Вот код JQuery
$('.droppableItem')
.bind('dragenter dragover', false)
.bind('drop', function(event){
accomplished($(this),event);
});
$('.DraggableThings tr').bind('click', function() {
$(this).toggleClass("selected");
});
$('.DraggableThings tr').bind('dragstart', function(event){
var mytext = event.target.innerText;
event.originalEvent.dataTransfer.setData('txt', mytext);
});
$('.DraggableThings tr').drag("init", function() {
return $('.selected');
}).drag(function (ev, dd) {
$(this).css({
top: dd.offsetY,
left: dd.offsetX
});
});
function accomplished(thing,event) {
event.dataTransfer = event.originalEvent.dataTransfer;
var data = event.dataTransfer.getData('txt');
log(data + " made it to accomplishments");
}
CSS
.selected {
background-color: #ECB;
}
Вот Fiddle
Надежда кто-то знает ответ Спасибо
Итак, давайте перейдем к тому, что вы говорите, - мы хватаем некоторые из рядов и бросаем их в зону падения. Они не добавляются (так, как будто они никогда не перемещаются), но мы можем получить объекты (по id, class и т. Д.), Которые были перемещены туда и использовать эту информацию. Какая информация вам нужна из этих перемещенных объектов и какую роль играет форма? – RDrazard
Ну, проект - это тип типа списка «todo», и было бы эффективно одновременно передавать несколько достижений серверу, а не одно за раз, что слишком медленно. Пользовательский интерфейс уже сумасшедший комплекс с большим количеством перетаскивания. В настоящее время вы можете перетаскивать отдельные элементы на различные значки, которые имеют разные функции, такие как «удалить» или «отложить» или «выполнить». Как только вы это сделаете, он отправит на сервер информацию и обновит ваш личный календарь и сохранит информацию в папке вашего диска. и т. д. – slashdottir
Итак, часть того, что нужно делать, когда вы знаете, где она была удалена, покрыта (или вы получаете то, что вам нужно сделать), и проблема под рукой заключается в том, как достичь этой точки, когда вы можете удалить несколько элементов в в одной из областей и получить сообщение, подобное «1, 2 и 3». – RDrazard