当我使用angular和ngDraggable(https://github.com/fatlinesofcode/ngDraggable)手动订购时,我需要设置<div>
订购的保存。
当页面加载排序很好,因为我在后端这样做,所以json排序。我在数据库中有列'位置'
拖放工作正常,但我甚至不知道如何在draggable和droppable div之间交换位置。
这是模板代码,它是父手风琴div:
<div ng-repeat="cat in rightsList" ng-show="cat.rights.length>0" ng-drag="true" ng-drag-data="cat" ng-class="cat.nameCategory" ng-drop="true" ng-drop-success="onDropComplete($index,$data,$event)" order="{{cat.position}}" id="accordion{{cat.idCategory}}" class="accordionHolder">
现在我添加这部分只是为了更好地解释,它包含订单位置:
order="{{cat.position}}"
是否可以将可拖动<div>
的位置设置为可放置,反之亦然?要交换订单号并保存吗?
处理此问题的角度控制器的一部分在这里:
$scope.onDropComplete = function (index, obj, evt) {
var otherObj = $scope.rightsList[index];
var otherIndex = $scope.rightsList.indexOf(obj);
$scope.rightsList[index] = obj;
$scope.rightsList[otherIndex] = otherObj;
}
没有找到类似的东西,所以感谢您的帮助。
我不需要完整的解决方案,一些想法和方向会很棒。