3

ng-optionsにリンクするオブジェクトの配列をループする選択を作成していますng-init。ただし、問題は、正しい変数も渡す必要があることng-changeです。

現在、以下のコードはng-init機能し、ロード時に適切なオプションを選択します。ただし、オプションが選択されている場合、ID はng-change

<select name="baddress" ng-init="autoship.baddress_id = address.id || addresses[0]" 
ng-model="autoship.baddress_id" 
ng-change="setter('baddress', autoship, address.id)" 
ng-options="address as address.address + ' ' + address.address2 + ' ' + address.city + ', ' + address.state + ' ' + address.zipcode for address in addresses" ></select>

の先頭に を追加.idすると、 は完全に機能しますが、ロード時に選択ドロップダウンが空のままになります。addressng-optionsng-change

<select name="baddress" 
ng-init="autoship.baddress_id = address.id || addresses[0]" 
ng-model="autoship.baddress_id" 
ng-change="setter('baddress', autoship, address.id)" 
ng-options="address.id as address.address + ' ' + address.address2 + ' ' + address.city + ', ' + address.state + ' ' + address.zipcode for address in addresses" ></select>
4

1 に答える 1

0

addresses[0] は、次の行のアドレス オブジェクト全体になります。

ng-init="autoship.baddress_id = address.id || addresses[0]" 

IDのみを保持するには、次のように変更する必要があると思います:

ng-init="autoship.baddress_id = address.id || addresses[0].id" 
于 2017-07-13T14:09:00.240 に答える