我有一個JSON對象,如:AngularJS select元素的值是一個對象,爲什麼?
{
"9000A": {
"LOCname":"A Location"
"LOCid":"9000A"
},
"2700C": {
"LOCname":"C Location"
"LOCid":"2700C"
},
"7600B": {
"LOCname":"B Location"
"LOCid":"7600B"
}
}
我需要LOCNAME排序它在選擇列表中顯示,我這樣做是使用自定義過濾器,轉動JSON對象到一個數組:
<select name="location" ng-model="formData.location" ng-options="loc.LOCname for loc in (locations | json2array | orderBy:'LOCname') track by loc.LOCid">
<option style="display:none" value="" disabled selected>Choose a location.</option>
</select>
這個偉大的工程我的選擇是這樣的:
<option value="9000A" label="A Location">A Location</option>
<option value="7600B" label="B Location">B Location</option>
<option value="2700C" label="C Location">C Location</option>
我的問題是formData.location現在等於對象:
{"LOCname":"A Location","LOCid":"9000A"}
預期的結果是formData.location將等於「9000A」
任何人能夠解釋爲什麼發生這種情況,如何解決?
你必須使用formData.location.LOCid現在得到9000A。 –
但是,爲什麼一個對象被分配到一個表單域?我正在選擇一個值爲「9000A」的選項,我不明白該對象是如何分配給formData.location的。 – Craig