Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 角度orderBy筛选器未自然排序_Angularjs - Fatal编程技术网

Angularjs 角度orderBy筛选器未自然排序

Angularjs 角度orderBy筛选器未自然排序,angularjs,Angularjs,我有以下代码: <html ng-app="myApp"> <head> <title>Angular Demo</title> <script src="angular/angular.min.js"></script> <script src="js/controllers.js"></script> <script s

我有以下代码:

<html ng-app="myApp">
    <head>
        <title>Angular Demo</title>
        <script src="angular/angular.min.js"></script>
        <script src="js/controllers.js"></script>
        <script src="//code.jquery.com/jquery-1.10.2.js"></script>
        <script src="//code.jquery.com/ui/1.11.1/jquery-ui.js"></script>
    </head>
    <body>
        <div ng-controller="myController">
            <div ng-init="oras='Valcea'"></div>
            <input type="text" ng-model="search"><br/><br/>
            <select name="" id="" ng-model="eleviorder">
                <option value="name">Nume</option>
                <option value="prenume">Prenume</option>
                <option value="age">Varsta</option>
                <option value="highscool">Liceu</option>
                <option value="luckynumber">Numar norocos</option>
            </select>
            Ordonare Nume:<label>
                <input type="radio" name="direction" ng-model="direction" checked/>ascending</label>
            <label> 
                <input type="radio" name="direction" ng-model="direction" value="reverse"/>descending
            </label>
            <ul>
                <li ng-repeat="item in elevi | filter :search | orderBy :eleviorder :direction :myfunction">
                    <div>{{item.name}} {{item.prenume}}, Varsta:{{item.age}}, Liceu: {{item.highscool}}, Numar norocos: {{item.luckynumber}} Oras:{{oras}}</div>
                </li>
            </ul>
        </div>
    </body>
</html>
谁从data.json获取此数据

[
    {"name":"Udrea",
    "prenume":"Alexandru",
    "age":"27",
    "highscool":"Henri Coanda",
    "luckynumber":"7"
    },
    {"name":"Rizea",
    "prenume":"Paul",
    "age":"23",
    "highscool":"Mircea Cel Batran",
    "luckynumber":"11"
    },
    {"name":"Popescu",
    "prenume":"Ion",
    "age":"19",
    "highscool":"Pedagogic",
    "luckynumber":"17"
    },
    {"name":"Popescu",
    "prenume":"Maria",
    "age":"18",
    "highscool":"Sanitar",
    "luckynumber":"8"
    },
    {"name":"Muscalu",
    "prenume":"Leonard",
    "age":"22",
    "highscool":"Forestier",
    "luckynumber":"47"
    },
    {"name":"Ionescu",
    "prenume":"Ema",
    "age":"29",
    "highscool":"Alexandru Lahovari",
    "luckynumber":"26"
    }
]

我的问题是,在自然顺序中,我不能按幸运数字排序,它排序了像11、17、26、47、7、8的幸运数字,而不是7、8、11、17、26、47 < /P > < P>这是因为盎格鲁JS认为这个字段是一个字符串属性。所以它是按字母顺序排列的。如果从integer属性的值中删除引号,它应该可以正常工作

[
    {"name":"Udrea",
    "prenume":"Alexandru",
    "age":27,
    "highscool":"Henri Coanda",
    "luckynumber":7
    },
    {"name":"Rizea",
    "prenume":"Paul",
    "age":23,
    "highscool":"Mircea Cel Batran",
    "luckynumber":11
    },...
]

这是一根绳子。这是对字符串的完美排序。您需要将它们更改为整数,或者编写一个自定义过滤器,首先使用parseInt进行排序。是的,但如何对其进行自然排序?没有解决办法?这是一个字符串。这是对字符串的完美排序。您需要将它们更改为整数,或者编写一个自定义过滤器,首先使用parseInt进行排序。编辑.json文件可能是最简单的方法。
[
    {"name":"Udrea",
    "prenume":"Alexandru",
    "age":27,
    "highscool":"Henri Coanda",
    "luckynumber":7
    },
    {"name":"Rizea",
    "prenume":"Paul",
    "age":23,
    "highscool":"Mircea Cel Batran",
    "luckynumber":11
    },...
]