加载视图时设置输入占位符

时间:2016-07-27 15:18:24

标签: javascript angularjs ionic-framework

我有以下输入字段

<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功能,但我不确定我是否正确使用它

由于

1 个答案:

答案 0 :(得分: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>