簡體   English   中英

angular ng-option選項和標簽

[英]angular ng-option Option and Label

我有一個選擇字段:

<select
    id="aircraft_id"
    data-id="{{( $obj->exists ) ? $obj->aircraft_id : NULL}}"
    data-placeholder="Wähle ein Flugzeug"
    no-results-text="'Konnte kein Flugzeug finden'"
    class="form-control"
    chosen="directiveOptions"
    name="aircraft_id"
    ng-model="aircraft"
    ng-change="checkSeats(aircraft.id)"
    ng-disabled="newAircraftIdentifier.length > 0 || newAircraftModel.length > 0"
    ng-options="aircraft.ident for aircraft in aircrafts">
</select>

和“飛機” json對象包含:

[Object { ident="--", id="", seats=""}, 
 Object { id=1, ident="D-3417", seats=2}, 
 Object { id=2, ident="D-1021", seats=2}, 
 Object { id=3, ident="D-4582", seats=1}, 
 Object { id=5, ident="D-FTSD", seats=null}, 
 Object { id=10, ident="D-5970", seats=1}
]

一切正常,除了select中的選項是我的json對象的索引,而不是id ...

因此結果如下:

<option value="0" selected="selected">--</option>
<option value="1">D-3417</option>
<option value="2">D-1021</option>
<option value="3">D-4582</option>
<option value="4" selected="selected">D-FTSD</option>
<option value="5">D-5970</option>

但是我希望該選項值是我在數組中的ID,就像最后一項中的ID 10,而不是5。希望您理解我的意思。

我認為這是錯誤的行:

ng-options="aircraft.ident for aircraft in aircrafts"

但是我不明白我該如何解決。

提前致謝,

雷夫

嘗試

aircraft.id as aircraft.ident for aircraft in aircrafts

您不必擔心option元素的value ,因為它與Angularjs模型無關。 使用ng-options創建的DOM的值始終為0..n,請檢查$scope.aircraft模型以獲取實際選擇的值

您還可以將其用作aircraft.id as aircraft.ident for aircraft in aircrafts然后將僅使用id更新模型$scope.aircraft

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM