在我的离子应用程序中,我想在出现错误时清除($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-content
或validation directive
是否在弄乱表单未定义的范围。我认为AngularJs的版本是1.5
答案 0 :(得分:1)
我遇到了同样的问题。我可以在$scope.$$childTail
或$scope.$$childTail.$$childHead.$parent
中找到该表单。只需尝试使用$scope.$$childTail.regForm
或$scope.$$childTail.$$childHead.$parent.regForm
访问表单即可。希望这对你有所帮助。