Я хотел бы изменить значок-заполнитель элемента с ионным вводом. Для этого я использую ng-show в двух разных значках. В контроллере я сравниваю два поля пароля равенства. Если они равны, отображается галочка, если не отображается значок снижения.angularjs применить ng-show к входам-placehoder-icon
HTML:
<label class="item item-input">
<input type="password" name="newPasswordVerify" placeholder="retype new password" ng-model="user.newPasswordVerify"/>
<i ng-show="passCorrect" class="icon ion-ios7-close-empty placeholder-icon"></i>
<i ng-show="!passCorrect" class="icon ion-ios7-checkmark-empty placeholder-icon" ></i>
</label>
контроллер:
$scope.$watch('user.newPasswordVerify', function() {
if($scope.user.newPasswordVerify!=="")
{
if($scope.user.newPasswordVerify.equals($scope.user.newPassword))
$scope.passCorrect = true;
else
$scope.passCorrect = false;
}
});
я получаю правильный консольный вывод, но дом не применяет изменения.
Edit: fiddle
Не проблема, которую вы просили, но вы пропустили '=' 'между name' и' newPasswordVerify' на вашей входной метке. – dckuehn
Вы пытались использовать $ scope. $ Apply(); '? –
Да, я пробовал $ scope. $ Apply, а также $ timout (fn() {$ scope.passCorrect = true/false}, 0); – marcel