Jquery Ui Sortable: как обнаружить каждое событие?
Это ситуация:
У меня есть простое приложение, которое использует Jquery Ui Sortable ( http://jqueryui.com/sortable/) для перетаскивания элементов между тремя разными столбцами.
Три названия столбцов:
- Сделать
- Работа в процессе
- Готово
Когда я перемещаю элементы из первых двух столбцов в третьем, мне нужно изменить класс элемента (панель начальной загрузки) и сделать его зеленым (успех панели).
Каждому столбцу я назначаю значение да / нет, чтобы идентифицировать столбец Готово:
<?
$column_done = 'no';
if ($value_board_column['name'] == 'Done')
{
$column_done = 'yes';
}
?>
<div class="sorted" data-board_done="<?= $column_done ?>">
В событии UPDATE я предупреждаю о значении готовой платы:
update: function(event, ui)
{
var board_done = $(this).data('board_done');
alert( 'Board_done: ' + board_done );
}
Это ключевой момент:
Событие UPDATE вызывается два раза - два раза, когда изменяется DOM, именно тогда, когда элемент удаляется из одного столбца и вставляется в другой.
Таким образом, предупреждение появляется два раза. Первый раз, когда я вижу значение, относящееся к исходному столбцу, второй раз, когда значение ссылается на второй столбец.
Например, если переместить один элемент из TODO в ГОТОВО, в предупреждении я вижу: "нет", а затем "да".
Это вопрос:
Поскольку мне нужно только второе значение, как я могу его обнаружить?
Большое спасибо!
1 ответ
Я думаю, что вы хотите использовать событие receive().
receive: function(event, ui)
{
var board_done = $(this).data('board_done');
alert( 'Board_done: ' + board_done );
}