2015-02-23 92 views
1

我遇到了一個使用angularjs/php/mysql的窗體做一個非常簡單的CRUD的麻煩。 我的表單正確地傳遞了文本輸入,但我無法通過<select>值。angularjs窗體與ng選項

下面的ng-option表達式是錯誤的,但我找不到如何編寫它。

<div ng-controller="formController"> 
    <form ng-submit="addVinyl()" novalidate class="simple-form"> 
     Owner: <select ng-model="vinyl.owner" ng-options="user.name for user in users"></select><br /> 
     Title: <input type="text" ng-model="vinyl.name" /><br /> 
     Artist: <input type="text" ng-model="vinyl.artist" /><br /> 
     <input type="submit" value="Add Vinyl" /> 
    </form> 
</div> 

給這個網站:

<option value="0">hey</option> 
<option value="1">hoy</option> 
<option value="2">hay</option> 

我的PHP文件獲取的文本輸入的良好值,但沒有得到「0」,「1」,「2」或「哎','hoy','乾草'...我嘗試顯示vinyl.owner,並且我得到了{"NAME":"hey"}作爲第一個選項。

回答

1

ng-options是不一樣的ng-repeat

供您使用正確的語法是:

ng-options="user.name as user.name for user in users" 

這是由於你需要的屬性value值的事實,那你需要一個「顯示文字」。

發現裏面文檔的詳細信息:

https://docs.angularjs.org/api/ng/directive/ngOptions