Код шаблона:
<div class="col-xs-12 choose-meter" ng-if="serviceHeat">
<span class="item_titles">{{"DICTIONARY.CHOOSE_METER_VALUE" | translate }}</span>
<div class="radio custom-radio">
<label class="radio small col-xs-3" ng-repeat="meterUnit in meterUnits">
<input type="radio" ng-model="mUnit.id" name="meterUnits" ng-value="meterUnit.id" ng-init="calculateMeters(meter)" ng-readonly="pay.innerState === 'confirm'" required/>
<span class="radio_styled"></span>
<span class="radio_text">
{{"DICTIONARY." + meterUnit.id | translate }}
</span>
</label>
<p>
{{mUnit.id | json}}
</p>
</div>
</div>
Кусок из контроллера:
$scope.meterUnits = [{id:'GC'},{id:'KW'},{id:'MW'},{id:'GJ'}];
$scope.mUnit = [];
Необходимо что бы по умолчанию была активна первая кнопка(GC
).
Пробовал сделать $scope.mUnit = [{id:'GC'}];
не помогло. Какие еще варианты?
В итоге получилось
<input type="radio" ng-model="mUnit" name="meterUnits" ng-value="meterUnit" ng-click="calculateMeters(meter, mUnit)" ng-readonly="pay.innerState === 'confirm'" required/>
Контроллер
$scope.meterUnits = ['GC','KW','MW','GJ'];
$scope.mUnit = 'GC';
$scope.calculateMeters = function(meters, meterUnit) {
if(meterUnit === 'GC'){
console.log('GC');//TODO: delete
}
if(meterUnit === 'KW'){
console.log('KW');//TODO: delete
}
if(meterUnit === 'MW'){
console.log('MW');//TODO: delete
}
if(meterUnit === 'GJ'){
console.log('GJ');//TODO: delete
}
}
Вопрос. Почему когда стояло ng-change событие срабатывало только при первых нажатиях на кнопки? когда нажимал второй раз(повторно на ту же кнопку), больше не срабатывало. ng-change срабатывает только когда есть изменения? Почему оно не считает каждый следующий клик, изменением?
$scope.mUnit.id
должен содержать значение из ng-value
т.е. получаем:
$scope.mUnit = {id:'GC'};
или для универсальности:
$scope.mUnit = {id: $scope.meterUnits[0].id};
Вариант второй
Изменяем html:
<input type="radio" ng-model="mUnit" name="meterUnits" ng-value="meterUnit" ng-init="calculateMeters(meter)" ng-readonly="pay.innerState === 'confirm'" required/>
в js
$scope.meterUnits = [{id:'GC'},{id:'KW'},{id:'MW'},{id:'GJ'}];
$scope.mUnit = $scope.meterUnits[0];
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
какая работа с формой которая отправляет данные и фото стоит на клиенте? Валидацию полей и отпраку данных я умею делаю но вот как собрать...
Использую простенький скрипт для переключения активных элементовНо, столкнулся с проблемой