AngularJS 和 ng-repeat 中的 orderby 带有特殊字符

标签 angularjs localization sql-order-by

我在排序包含非英语字母表字符(š、č、ž、..)的字符串时遇到问题

这是 fiddle :http://fiddle.jshell.net/vhhgh/

这些字母来自斯洛文尼亚语字母表。

最佳答案

已经有一段时间了,但我找到了其他解决方案:fiddle

HTML:

<div ng-app='test'>
  <h2>Users</h2>
  <div ng-controller="UsersCtrl">
    <ul>
      <li ng-repeat="user in users | localeCompareString">
        {{user.surname}} {{user.name}}
      </li>
    </ul>
  </div>
</div>

JS:

(function(angular) {
  'use strict';
  var test=angular.module('test',[])
.controller('UsersCtrl', ['$scope',function($scope) {
  $scope.users = [
    {name:'Ben', surname:'Živkovič'},
    {name:'Ken', surname:'AlGore'},
    {name:'Erica', surname:'Červ'},
    {name:'Jane', surname:'Šinigoj'},
    {name:'Kevin', surname:'Sort'},
    {name:'Roger', surname:'Willson'},
    {name:'Kim', surname:'Zorro'}
];
}]).filter('localeCompareString',function(){
    return function (items) {
         //window.console.log(items);
        items.sort(function (a, b) {
            return a.surname.localeCompare(b.surname);
        });
        return items;
      }; 
});

})(window.angular);        

关于AngularJS 和 ng-repeat 中的 orderby 带有特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20292319/

相关文章:

Mysql命令不同选择

MySQL ORDER BY 去除非数字字符

angularjs - 无法呈现 WinJS Angular Pivot 指令

AngularJS UI Bootstrap 0.6.0 Modal 与 Module.Controller() 语法

php - 从 Codeigniter Controller 中的 Angular $http 获取参数

c# - ADFS 登录页面本地化 - ASP.NET : I can't seem to be able to change language of the page dynamically

android - 如何在 Android 中获取非常短的星期名称,例如 Google Calendar 应用程序

ios - Xcode 4.4 更改为本地化 - 我如何不本地化主 Storyboard?

php - Mysql select order by 就像一个字符串,而不是一个数字

javascript - Angular [$插值 :interr] error for applied filter