【问题标题】:AngularUI UI-sortable Index Update IssueAngularUI UI 可排序索引更新问题
【发布时间】:2014-03-26 23:19:04
【问题描述】:

AngularUI 的 ui-sortable 指令有一个奇怪的错误。在大多数情况下,拖动元素似乎很好,当元素被拖动到新位置时索引会更新。 但是,有些情况下它没有得到更新。我创建了一个出现问题的可重复实例。第一次运行时,将 2 // two 行向下拖动一行,索引显然没有更新。

有没有办法解决这个问题?

HTML:

<section ng:controller="controller" ui-sortable ng-model="nums">
    <div ng-repeat="i in nums">
       {{$index}} // {{i}}
    </div>
</section>

JS:

var myapp = angular.module('myapp', ['ui']);
myapp.controller('controller', function ($scope) {
    $scope.nums = ['zero','one','two','three','four','five'];
});
angular.bootstrap(document, ['myapp']);

Jsfiddle:http://jsfiddle.net/jeffreyqua/hKYWr/1225/

【问题讨论】:

    标签: angularjs jquery-ui-sortable angular-ui


    【解决方案1】:

    您的问题的解决方案比您可能想象的要简单得多。您使用的是旧版本的 Angular-UI Sortable 插件,它不能与较新的 jQuery 插件配合使用。

    最新版本将解决您的问题: https://github.com/angular-ui/ui-sortable/blob/c4b8e1b9ce8a7e0525aff3ca31f439e30c5b0347/src/sortable.js (哈希是为了让它与已知的工作版本挂钩。您也可以从 master 制作本地副本)

    JS Fiddle 导入新版本的 sortable。 http://jsfiddle.net/9eVEc/

    请注意,您必须将 angular.module 依赖项更改为包含 ['ui.sortable'] 而不仅仅是 ['ui']。

    即:

    var myapp = angular.module('myapp', ['ui.sortable']);
    

    【讨论】:

      猜你喜欢
      • 2011-02-11
      • 1970-01-01
      • 2011-02-09
      • 1970-01-01
      • 2011-05-05
      • 2019-07-19
      • 2011-03-25
      • 2014-07-02
      相关资源
      最近更新 更多