Javascript 如何在angular js中对自动完成下拉列表中的项目列表(按字母顺序)排序
这是我的自定义下拉列表。数据来自json对象。Javascript 如何在angular js中对自动完成下拉列表中的项目列表(按字母顺序)排序,javascript,angularjs,html,Javascript,Angularjs,Html,这是我的自定义下拉列表。数据来自json对象。 <div custom-select name="pSelect" id="pSelect" ng-model="selectedP" ng-trim="false" ng-options="p as p.name for p in data | orderBy:'name'"></div> 你在找这样的东西吗?试着用angular,上面的看起来像这样 //last attribute of orderBy would
<div custom-select name="pSelect" id="pSelect" ng-model="selectedP" ng-trim="false" ng-options="p as p.name for p in data | orderBy:'name'"></div>
你在找这样的东西吗?试着用angular,上面的看起来像这样
//last attribute of orderBy would depend on ascending or descending.
<div custom-select name="pSelect" id="pSelect" ng-model="selectedP" ng-trim="false" ng-options="p as p.name for p in data | orderBy: 'p': true"></div>
//or set dynamically
<div custom-select name="pSelect" id="pSelect" ng-model="selectedP" ng-trim="false" ng-options="p as p.name for p in data | orderBy: type : true"></div>
<button ng-click="type='name'"></button>
<button ng-click="type='year'"></button>
<button ng-click="type='other'"></button>
//orderBy的最后一个属性取决于升序或降序。
//或动态设置
如果对象是数组,则可以使用内置的
只需在ng选项中添加这一行
ng-options="p as p.name for p in data | orderBy : 'name'
这假设您有一个“name”属性,如果没有,则将其更改为您想要排序的任何属性
通过在属性前面使用“-”运算符,可以轻松地反转排序顺序,例如
ng-options="p as p.name for p in data | orderBy : '-name'
堆栈溢出不是代码编写服务。你能告诉我们你尝试了什么吗?我已经尝试了上述所有方法,但我得到了这些错误“angular.js:11653错误:[$rootScope:infdig]10$digest()迭代已达到。正在中止!在过去5次迭代中触发了观察器:[]”如果你收到这些错误,那么你的代码还有其他问题。下面是我添加orderBy的文档中的一个工作示例。非常感谢AlexI尝试了以上所有方法,但我得到了这些错误“angular.js:11653错误:[$rootScope:infdig]10$digest()迭代已达到。正在中止!在过去5次迭代中解雇了观察者:[]”“@Naren需要更多代码,请设置一个plunker。需要查看控制器定义。还需要了解如何在视图中使用控制器。