下拉列表不能使用Angular.js按字母顺序排序。我在下面解释我的代码。
<div class="input-group bmargindiv1 col-md-12">
<span class="input-group-addon ndrftextwidth text-right" style="width:180px">Business Name :</span>
<select class="form-control" id="restau" ng-model="restaurant" ng-options="qua.name for qua in listOfRestaurant | orderBy:'name' track by qua.value" ng-change="getDayFromSpecial('restau');">
</select>
</div>
$scope.listOfRestaurant=[{
name:'Select Business Name',
value:''
}]
$scope.restaurant=$scope.listOfRestaurant[0];
$http({
method:'GET',
url:"php/customerInfo.php?action=restaurant",
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
}).then(function successCallback(response){
angular.forEach(response.data,function(obj){
var data={'name':obj.rest_name,'value':obj.member_id};
$scope.listOfRestaurant.push(data);
})
},function errorCallback(response) {
})
我的问题是我可以订购列表,但Select Business Name
位于此列表的中间位置,该列表应首先选中并选择。
答案 0 :(得分:1)
你可以这样写。
<select name="quarter" ng-model="Quarter"
ng-options="obj.value as obj for obj in options | orderBy:'toString()'">
<option value="" >Select Business Name</option>
</select>
不要将您选择的商家名称放在数据列表中。
答案 1 :(得分:0)
将orderBy:'toString()'
与ng-repeat一起使用,您可以使用angular.js对列表值alphabetically
进行排序
示例:
<select name="quarter" ng-model="Quarter"
ng-options="obj.value as obj for obj in options | orderBy:'toString()'">
</select>
选中此jsfiddle