2017-09-26 5 views
2

각도 1ng 값에서 ng-required로 제대로 작동하지 않습니다. 다음 코드를 실행하면 "입력 필드를 비울 수 없습니다."라는 메시지가 표시됩니다. "John"값이 포함되어 있지만. 다른 값을 입력하거나 입력 필드에서 무언가가 제거되면 필요한 문장이 사라집니다.ng 값이 제대로 작동하지 않습니다.

아무도이를 해결하는 방법을 알고 있습니까? 폼이 초기화 될 때 undefined입니다 ng-model에 대한 myInput를 사용하고 있기 때문에

<!DOCTYPE html> 
 
<html> 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script> 
 
<body ng-app=""> 
 

 
<form name="myForm"> 
 

 
Click here to make the input field required: 
 

 
<div ng-app="" ng-init="firstName='John'"> 
 

 
<input name="myInput" ng-model="myInput" ng-value="firstName" ng-required="true"> 
 

 
<h1 ng-if="!myForm.myInput.$valid">The input field cannot be empty</h1> 
 

 
</form> 
 

 
</body> 
 
</html>

답변

2

이 있습니다. 당신은 NG 모델 값을 NG-init을 경우 (양식을 초기화 할 때 "요한은"모델에있을 것 같은) 당신의 예상 행동을 얻을 것이다 :

<!DOCTYPE html> 
 
<html> 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script> 
 
<body ng-app=""> 
 

 
<form name="myForm"> 
 

 
Click here to make the input field required: 
 

 
<div ng-app="" ng-init="firstName='John'"> 
 

 
<input name="myInput" ng-model="firstName" ng-value="firstName" ng-required="true"> 
 

 
<h1 ng-if="!myForm.myInput.$valid">The input field cannot be empty</h1> 
 

 
</form> 
 

 
</body> 
 
</html>