폼을 편집할 때마다 확인하기 위해 $dirty in angularjs 사용
양식의 일부 필드를 작성하여 양식이 편집될 때마다 확인하려고 했습니다.$dirty가 이 작업에 적합하다고 읽었는데 여기서 무엇을 놓쳤는지 알 수가 없습니다.
<!DOCTYPE html>
<html lang="en">
<script src= "http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
<body>
<div ng-app="myApp" ng-controller="formCtrl">
<form name = "myForm" novalidate>
First Name:<br>
<input type="text" ng-model="user.firstName"><br>
Last Name:<br>
<input type="text" ng-model="user.lastName">
<br><br>
<button ng-click="reset()">RESET</button>
</form>
<p> is Form dirty? {{isDirty}}<p>
<p>form = {{user }}</p>
<p>master = {{master}}</p>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('formCtrl', function($scope) {
$scope.master = {firstName:"John", lastName:"Doe"};
$scope.reset = function() {
$scope.user = angular.copy($scope.master);
};
$scope.reset();
$scope.isDirty = $scope.myForm.$dirty;
});
</script>
</body>
</html>
사용자가 양식을 수정할 때마다 플래그를 더티에서 트루로 만들려고 합니다.감사해요.
당신이 그립습니다name
해당 필드에 대해 양식 유효성 검사를 사용할 수 없는 양식 필드의 속성입니다.각 필드에 고유한 이름을 추가해야 해당 필드를 에 추가할 수 있습니다.myForm
물건
마크업
<form name="myForm" novalidate>
First Name:<br>
<input type="text" name="firstName" ng-model="user.firstName"><br>
Last Name:<br>
<input type="text" name="lastName" ng-model="user.lastName">
<br><br>
<button ng-click="reset()">RESET</button>
</form>
또한 액세스 중입니다.myForm
폼 오브젝트(form object)일 뿐인 오브젝트(object), DOM이 렌더링될 때까지 사용할 수 없습니다.$scope.myForm
컨트롤러를 시작할 때 정의되지 않을 것입니다. 정말로 액세스하려면$scope.myForm
컨트롤러에서 코드를 입력해야 합니다.$timeout
실행될$timeout
다음 다이제스트 사이클의 함수 코드.
$timeout(function(){
$scope.isDirty = $scope.myForm.$dirty;
});
갱신하다
별도로 유지할 필요가 없습니다. isDirty
flag (따라서 별도의 파일을 변경해야 함)isDirty
변경 사항을 반영할 플래그myForm.$dirty
flag.) 대신 사용을 제안합니다.$scope.myForm.$dirty
기치로서그래서 그 표현을 사용합니다.myForm.$dirty
, 그리고 이 깃발은 형태가 더러워지면 변할 것입니다.
언급URL : https://stackoverflow.com/questions/30096083/using-dirty-in-angularjs-in-order-to-check-whenever-a-form-is-being-edited
'programing' 카테고리의 다른 글
일치하지 않는 익명 정의() 모듈 (0) | 2023.10.05 |
---|---|
가져오기: 상태가 정상이 아닐 경우 약속을 거부하고 오류를 잡습니까? (0) | 2023.10.05 |
LINQ의 Select 명령에 해당하는 파워셸? (0) | 2023.10.05 |
sigprocmask()에서 Set and Oldset(설정 및 이전 설정) (0) | 2023.10.05 |
푸시 사이드 메뉴로 신체 스크롤 방지 방법 (0) | 2023.10.05 |