2014-04-17 84 views
0

相同我試圖讓value屬性等於它在對象中看起來像的值。Angular ng選項設置值與對象

例如:

對象:

$scope.tagSelect = [ 
     { Name: 'Must have', Value: 1 }, 
     { Name: 'Must not have', Value: 2 }]; 

角HTML:

<select ng-options="select.Value as select.Name for select in tagSelect" ng-model="tag.MatchLogic"></select> 

輸出:

<select ng-options="select.Value as select.Name for select in tagSelect" ng-model="tag.MatchLogic" class="ng-pristine ng-valid"> 
     <option value="0" selected="selected">Must have</option> 
     <option value="1">Must not have</option> 
    </select> 

這不正是我想要的。我想要的是讓選項值與我的對象中的值相等。

更象下面這樣:

<option value="1" selected="selected">Must have</option> 
<option value="2">Must not have</option> 
+0

這實際上是必要的嗎?因爲你知道,你的模型確實具有正確的價值。 – Beterraba

+1

請參閱http://stackoverflow.com/questions/13692921/angularjs-ngoption-with-array/13693979 – dnc253

回答

0

我覺得你的方式是正確的,模型值更新正確的,但HTML value屬性是不一樣的價值。奇怪的行爲,但它看起來像是想要的。

ng-options="select.Value as select.Name for select in tagSelect" 

http://jsfiddle.net/nicolasmoise/Y8C5A/

通知的NG-模型是如何用正確的值更新。

+0

我的標記.MatchLogic在某些情況下從數據庫中設置。我只是存儲爲一個id值示例1或2.當我把它帶入它不會自動選擇corrent id。相反,它在選擇框中是空白的。 – allencoded

+0

那麼像這樣http://jsfiddle.net/nicolasmoise/Y8C5A/1/?對我來說工作得很好 – NicolasMoise

+0

嗯,我發現它是徹底的選擇HTML選項,但沒有選擇它。必須是風格問題?將在此工作。 – allencoded