2015-02-05 4 views
0

예를 들어, 양식에 선택 및 입력 (ID 카드)이 있습니다. select는 입력의 ID 카드 유형 (세금 ID, 자동차 라이센스 ID)을 결정합니다. 사용자 정의 입력에 지시문을 추가하여 해당 값의 유효성을 검사하려는 경우 유효성 검사 방법은 유형 (ID 카드 유형) (선택에 의해 결정됨).angularjs, 동적 지시문 유효성 검사

나는 유효성 검사를 위해 지시문을 동적으로 변경하거나 모든 유형에 대해 하나의 지시문을 유효성 검사를 수행하지만 지시문에 형식 정보를 전달하는 방법을 고려 중입니다.

어떻게해야합니까?

답변

0

당신은 지시없이 그것을 할 수 : 'car'을 선택하면 내 예에서

var myApp = angular.module('myApp',[]); 
 

 
function MyCtrl($scope) { 
 
    
 
    $scope.type = 'tax'; 
 
    
 
    $scope.yourForm = {}; 
 
    $scope.yourForm.inputType = {}; 
 
    $scope.yourForm.inputType.$valid = false; 
 

 
    $scope.validate = function(type, text) { 
 
    // return boolean based on your validation for the input string and type (tax or car) 
 
    $scope.yourForm.inputType.$valid = (type === 'tax'); 
 
    } 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 

 
<div ng-app="myApp" ng-controller="MyCtrl"> 
 
    <form name="yourForm"> 
 
     <select ng-model="type" ng-change="validate(type, text)"> 
 
     <option>tax</option> 
 
     <option>car</option> 
 
    </select> 
 
    
 
    <input type="text" name="inputType" ng-model="text"> 
 
    input valid: {{yourForm.inputType.$valid}} 
 
    </form> 
 
</div>

는, 입력의 유효성 검사가 거짓입니다.

물론이 모든 것을 지시어에 넣을 수 있습니다.

+0

죄송합니다. 분명히 설명하지 않았지만 질문을 업데이트했습니다. 입력 돔을 변경할 필요가 없습니다. – virsir

+0

내 대답이 업데이트되었습니다. – DonJuwe

관련 문제