我有一个由姓名和地址组成的下拉列表。如果选择了名称,那么我的列表应该按名称排序。
我的代码无法正常工作` Order By
<div class="col-xs-2">
<select class="form-control" ng-change="changedvalue()" ng-model="Tosort.order">
<option value="None">-- Select --</option>
<option ng-model="Tosort.order" value="Name">Name</option>
<option ng-model="Tosort.order" value="Address">Address</option>
</select>
</div>
<li ng-repeat="x in details | filter: Tofilter.country | orderBy:sort.value">
最佳答案
您需要简单地使用 ng-model 而不是 ng-change() 事件。您的代码中还有一些其他问题,例如您只需要在 select 标记上提供 ng-model 。我认为您可能需要重新审视一些 Angular 基础知识。我已经在下面展示了它是如何工作的。选择标签将绑定(bind)到“sortBy”,并且在“orderBy”过滤器中使用相同的标签
<div class="col-xs-2">
<select class="form-control" ng-model="sortBy">
<option value="None">-- Select --</option>
<option value="Name">Name</option>
<option value="Address">Address</option>
</select>
</div>
<li ng-repeat="x in details | filter: Tofilter.country | orderBy:sortBy">
关于angularjs - 选择下拉菜单时执行 orderBy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25196521/