2015-08-19 19 views
4

目前,我有這樣的事情(簡體):ng-options:如何在最後放置空選項?

<select ng-model=model.policyHolder ng-options="person.index as person.name for person in model.insurance.persons"> 
    <option value>Someone else 
</select> 

這將創建與人名和一個空的頂部「別人」的選項下拉。問題是,如何在下拉菜單的底部處獲得空的選項

我非常想繼續使用ng-options這一點,特別是因爲控制默認選項的位置看起來像一個太小的變化,以證明稍微更詳細的<option ng-repeat>方式。

謝謝!

+0

你是問如何只是有一個值=「」選項在最後,還是你想空白輸入域,這是唯一可見的或活動時,別人被選中? – Kip

+0

空的

回答

4

使用選項與value=""

像:

<select ng-model="model.policyHolder" ng-options="person.index as person.name for person in model.insurance.persons"> 
    <option value="">Someone else</option> 
</select> 

如果你想顯示別人在底部時,點擊下拉列表,你可以使用。

<select ng-model="model.policyHolder"> 
    <option ng-repeat="person in model.insurance.persons" value="{{person.index}}">{{person.name}}</option> 
    <option value="">Someone else</option> 
</select> 
+0

我不確定發生了什麼,但我無法使用'ng-repeat'方式正常工作。它似乎繼續選擇價值或東西,這就是爲什麼我去'ng選項'符號。但嚴重的是,這是唯一的方法?我似乎是這樣一個世俗的東西,在底部有空選項... – Thany

+0

我編輯了我的代碼。請在'選擇'列表中使用'ng-model =「model.policyHolder」'而不是'選項'中的波紋管部分代碼。謝謝 –

0

嘗試改變,

<option value>Someone else 

<option value="">Someone else</option> 
+0

那些是相同的。 – Thany

0

其他的答案似乎在頂部,而不是底部添加的元素。

如果您想在列表末尾添加一些東西,您可以隨時將其添加到JavaScript中。

查看工作plunk,改編自角select documentation

下面

主要部分複製:

(function(angular) { 
    'use strict'; 
angular.module('defaultValueSelect', []) 
    .controller('ExampleController', ['$scope', function($scope) { 
    $scope.data = { 
    availableOptions: [ 
     {id: '1', name: 'Option A'}, 
     {id: '2', name: 'Option B'}, 
     {id: '3', name: 'Option C'} 
    ], 
    selectedOption: {id: '3', name: 'Option C'} //This sets the default value of the select in the ui 
    }; 

    // Add the alternative option 
    // may need to use $digest, depending on where in the process you do this. 
     $scope.data.availableOptions.push({ id: '', name: 'None of the above'}) 
}]); 
})(window.angular); 
相關問題