2017-03-11 116 views
1

後,這是我的MD-選擇空MD-選擇選擇選項

<md-input-container flex="50"> 
     <label>Choose user</label> 
     <md-select ng-model="data.model" ng-change="sum(data.model)"> 
      <md-option ng-value="logins.name" ng-repeat="logins in chooseLogins">{{logins.name}}</md-option> 
     </md-select> 
    </md-input-container> 

選擇正常工作,我得到我所需要的,但MD-Select是 「選擇」 後空。

它看起來像獲取選項,然後清除字段。

+0

「選擇後是空的」究竟意味着什麼? – lin

+0

檢查此[jsFiddle](https://jsfiddle.net/The_Bear/suunyz3e/1082/)...我不明白爲什麼你沒有看到選定的選項,可能是你的'chooseLogins'數組的問題...顯示你的控制器的更多代碼。 –

+0

@ The.Bear檢查我的jsFiddle,然後嘗試選擇用戶爲空後選擇:https://jsfiddle.net/defuseer/mrp3qxgq/41/ – Defus

回答

0

問題是因爲您在ng-change上更改了md-select型號。你不應該重新分配這個模型。如果需要,嘗試改變它。

編輯:

好了,你不能在你的情況發生變異的模型,因爲它是字符串文字。所以你只是不應該重新分配它並將change事件的tests變量保存到其他地方。

+0

我不能自己做這個。我不知道如何「改變」它。 – Defus

+0

好吧,我想你應該改變你的程序邏輯。在你的模型中,你需要有用戶名,這是合乎邏輯的。但是,您可以將其更改爲完全不同的數據。例如,模型是「Mark Doe」,但變成了「{test:41}」,這很奇怪。不確定你的邏輯完整性,但[這裏](https://jsfiddle.net/GProst/mrp3qxgq/65/)是我的jsFiddle變化。通常我將'data.model'改爲'data.currentUser.name',然後在'change'事件中,我將'tests'變量保存到'data.currentUser.dept'中。 – GProst