Ввод заполнителя устанавливается при загрузке представления

0

У меня есть следующее поле ввода

<input type="number" ng-model="data.mainOdd1" min="0" step="any" placeholder="#1 Main Odd" onfocus="this.placeholder=''" 
         aw-limit-length="6" ui-blur="mainInputsChange('mainOdd1', $event, '#1 Main Odd');" 
           ng-focus="mainOdd1Border = ''; mainOdd2Border = ''; bkOdd1Border = ''; bkOdd2Border = ''; mainOdd1Value = ''; bkOdd1Value = ''; bkOdd2Value = ''; bkOdd3Value = '';" 
             ng-style="mainOdd1Border">

Он отлично работает в начале и заполнитель установлен правильно

В контроллере я установил следующую функцию

$scope.$on('$ionicView.enter', function() {
  $scope.data.mainOdd1 = '',
  $scope.data.mainOdd2 = '',
  $scope.data.bkOdd1 = '',
  $scope.data.bkOdd2 = '',
  $scope.data.result = 0,      
  $scope.data.win = '',                        
  $scope.data.winStake = 0,                
  $scope.data.backup1 = 0,
  $scope.data.return1 = '',                        
  $scope.data.return1Stake = 0,                      
  $scope.data.backup2 = 0,
  $scope.data.return2 = '',                        
  $scope.data.return2Stake = 0,                            
  $scope.data.backup3 = 0,  
  $scope.data.return3 = '',                        
  $scope.data.return3Stake = 0
})

для инициализации переменных в начале.

Случается, что когда я переключаюсь на другое представление и переключаюсь обратно на это, поле пустое без заполнителя.

В любом случае, чтобы это исправить? Я попытался использовать функцию onLoad, но я не уверен, что правильно ее использую

благодаря

  • 0
    Вы действительно должны использовать onfocus и ng-focus вместе? Похоже, что есть много библиотек и фреймворков, работающих на одном входе, а не единым образом
  • 0
    Вы правы насчет onFocus, я не заметил, я это исправлю. можешь сказать что еще? Спасибо
Показать ещё 2 комментария
Теги:
ionic-framework

1 ответ

0

Сокращенная версия того, как это можно сделать с угловым.

Я настоятельно рекомендую использовать ng-init; объявите pText1 в вашем контроллере. Если вы делаете это для нескольких входов, я бы создал функции для действий фокуса и размытия, а также карту для предполагаемых значений.

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

<div ng-app>
  <input type="number" placeholder="{{pText1}}" ng-init="pText1 = 'Placeholder Text'" ng-focus="pText1 = ''" ng-blur="pText1 = 'Placeholder Text'" />
</div>

Ещё вопросы

Сообщество Overcoder
Наверх
Меню