Подтвердить что ты не робот

Настройка и получение переключателя бутстрапа внутри цикла повторения angular

Я пытаюсь установить кнопку по умолчанию и получить текущее выбранное значение. Пример без цикла повторения работает.

Вот мой plnkr: http://plnkr.co/edit/t9CefA5bhLZs3RASmEUG?p=preview

Он основан на этом примере: http://plnkr.co/edit/LFj4inY9TLYZs9z7yHCr?p=preview

Спасибо!

4b9b3361

Ответ 1

Итак, в вашем плунжере было 2 вещи.

Во-первых, атрибуту btn-radio не требуется интерполяция ({{}}), вы можете (и должны) предоставлять выражение напрямую. Поэтому просто напишите btn-radio="company.id" вместо btn-radio="{{company.id}}".

Во-вторых, вы должны знать, что директива ng-repeat создает новую область. Это очень, очень общая концептуальная проблема, с которой люди сталкиваются с AngularJS, поэтому я бы посоветовал вам читать https://github.com/angular/angular.js/wiki/The-Nuances-of-Scope-Prototypal-Inheritance

Возвращаясь к конкретной проблеме, вы можете либо изменить ваше выражение ng-model, чтобы указать на родительскую область (ng-model="$parent.radioModel"), либо привязать к свойству объекта (ng-model="radioModel.id").

Вот рабочий план со вторым подходом: http://plnkr.co/edit/uGAxaRlPFK6sD4tRjGXX?p=preview