ionic:无法在控制器中按名称访问表单

时间:2017-04-08 03:14:00

标签: angularjs ionic-framework

在我的离子应用程序中,我想在出现错误时清除($setPristine())表单。 但我得到Cannot read property '$setPristine' of undefined

    <ion-view view-title="Register Form">
      <ion-content>
        <form ng-submit="signup()" id="regForm" name="regForm" novalidate>
          <div ......etc
             <input type="password" ng-model="user.password_c" valid-password-c required>
          </div>
        </form>
      </ion-content>
    </ion-view>

这是控制器:

    .controller('RegisterCtrl', function ($scope ...) {
          $scope.signup = function () {
            AuthService.register(user).then(function (msg) {...})
            }, function (errMsg) {
              $scope.user={};
              $scope.regForm.$setPristine();
            });};
    })

我不知道ion-contentvalidation directive是否在弄乱表单未定义的范围。我认为AngularJs的版本是1.5

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。我可以在$scope.$$childTail$scope.$$childTail.$$childHead.$parent中找到该表单。只需尝试使用$scope.$$childTail.regForm$scope.$$childTail.$$childHead.$parent.regForm访问表单即可。希望这对你有所帮助。