Пытаюсь научиться работать с backbone. В настоящее время я пытаюсь добавить сортировку из пользовательского интерфейса jQuery в приложение todo, созданное: Addy Osmani.
Итак, я попытался вызвать событие в событии сортируемого падения, как я видел в скрипте js. Это событие активирует функцию (drop()
) в представлении моего элемента, которая запускает функцию (update-order()
) в представлении моего приложения. Я хочу, чтобы эта последняя функция переупорядочивала список задач, changeand
сохраняя новый порядок.
У меня проблема в том, что моя функция updateOrder
запускается примерно 4 раза, когда функция перетаскивания запускается только один раз, также изменение порядка не записывается, и я не могу понять, почему.
Вот мой пример: http://www.fgtechs.fr/backbone/ Я в основном пытаясь инвертировать порядок события отбрасывания сортируемого.
Я бы хотел, чтобы моя функция updateOrder
срабатывала только один раз и записывались изменения порядка... но ничего этого не произошло...
Мне действительно нужна твоя помощь.
Вот часть моего кода (остальное вы можете увидеть в моем примере):
<script>
$(document).ready(function() {
$('#widget-list').sortable({
stop: function(event, ui) {
event.stopPropagation()
event.preventDefault();
ui.item.trigger('drop', ui.item.index());
}
});
});
</script>
//on the drop, we invert the order
updateOrder:function(event, model, position){
alert('update-order');
console.log(app.Widgets.length);
app.Widgets.each(function (widget, order) {
widget.save({
'order': app.Widgets.length-order
});
});
}
//On the event drop, we trigger the function update order
drop: function(event, position) {
this.$el.trigger('update-order', [this.model, position]);
},