以这种形式为例http://plnkr.co/edit/fHEBw6dDdG3IVgnmCLb7?p=preview
我怎样才能把 $pristine
SAVE DRAFT
之后表单的状态为真按钮被按下?
最佳答案
您可以调用 $setPristine
在 form
: http://plnkr.co/edit/wXaFXtuhNH6d4SP2uArm?p=preview
<button ng-click="reset(); form.$setPristine()">RESET</button>
<button ng-click="update(user); form.$setPristine()">SAVE</button>
或者您可以在 Controller 中调用该方法(确保表单存在之后):
$scope.update = function(user) {
$scope.master= angular.copy(user);
if ($scope.form) $scope.form.$setPristine();
};
$scope.reset = function() {
$scope.user = angular.copy($scope.master);
if ($scope.form) $scope.form.$setPristine();
};
演示:http://plnkr.co/edit/Mau7uuDfPlzcn418OdWh?p=preview
关于forms - AngularJs 提交表单并重置 $pristine 状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20490958/