2016-08-09 2 views
1

그에 따라 입력에 지시문을 설정하려고합니다.Angularjs - dom 요소에 동적으로 지시문 삽입

그래서 내가이 입력 있다고 가정 해 봅시다 : 나는 동적 "의 setAttribute"을 사용하여 삽입 "maskvalue"할 때

<input type="foo" id="myinput" maskvalue> </input> 

이 내 응용 프로그램에서 잘 작동을, 문제는 그것이 여기에 작동하지 않습니다 지금 당장하고 싶은 일 :

element = document.getElementById('myinput'); 
if(element){ 
    element.setAttribute('maskvalue', ""); 
} 

이 코드는 내 지시문을 dom 요소에 삽입하지만 아무런 효과가 없습니다. 이미로드 된 DOM에 사용자 지정 지시문을 삽입하는 것은 불가능합니다. 제가 틀 렸습니다.

하지만 기본적으로 dom 요소에 동적으로 지시문을 삽입 할 수 있습니까? 에

감사

+1

당신은 각도를 알아 내기 위해 $ compile의 어두운 마법을 사용해야 할 것입니다 - http://onehungrymind.com/angularjs-dynamic-templates/ – dmoo

답변

3

를 사용하여 각도의 $compile 명령이 각도는-이지는. 기본적으로 Angular에게 변경 사항을 적용하여 마술을 수행 할 수 있음을 통보해야합니다.

function MyController($scope, $compile) { 
    element = document.getElementById('myinput'); 
    if (element) { 
     element.setAttribute('maskvalue', ""); 
     $compile(element)($scope); 
    } 
} 

확실히 당신은 $compile$scope가 주입이있는 각도 컨트롤러에서이 작업을 수행 있는지 확인합니다.

+0

고맙습니다. :) – user309838

관련 문제