ng-click으로 DOM 개체에 대한 참조 전달
ng-click에서 동일한 콜백을 가진 여러 요소가 있습니다.
<button ng-click="doSomething()"></button>
<button ng-click="doSomething()"></button>
<button ng-click="doSomething()"></button>
<button ng-click="doSomething()"></button>
// In controller:
$scope.doSomething = function() {
// How do I get a reference to the button that triggered the function?
};
doSomething을 호출 한 객체에 대한 참조를 어떻게 얻을 수 있습니까? (속성을 제거해야합니다)
각도 방법은 각도 문서에 표시됩니다. :)
https://docs.angularjs.org/api/ng/directive/ngReadonly
다음은 그들이 사용하는 예입니다.
<body>
Check me to make text readonly: <input type="checkbox" ng-model="checked"><br/>
<input type="text" ng-readonly="checked" value="I'm Angular"/>
</body>
기본적으로 각진 방법은 입력이 읽기 전용인지 여부를 보유 할 모델 객체를 생성 한 다음 그에 따라 해당 모델 객체를 설정하는 것입니다. 앵귤러의 장점은 대부분의 경우 돔 조작을 할 필요가 없다는 것입니다. 모델이 설정된 방식으로 각도를 렌더링하면됩니다 (angular가 dom 조작을 수행하고 코드를 깨끗하게 유지).
그래서 기본적으로 귀하의 경우 아래처럼 뭔가를 할 또는 체크 아웃 할 것이다 이 동작하는 예제입니다.
<button ng-click="isInput1ReadOnly = !isInput1ReadOnly">Click Me</button>
<input type="text" ng-readonly="isInput1ReadOnly" value="Angular Rules!"/>
기술적으로 말하면 다음을 수행하는 동안 :
<button ng-click="doSomething($event)"></button>
// In controller:
$scope.doSomething = function($event) {
//reference to the button that triggered the function:
$event.target
};
AngularJS 철학은 모델 조작에 초점을 맞추고 AngularJS가 렌더링을 수행하도록하는 것이므로 (선언적 UI의 힌트를 기반으로) 이것은 아마도하고 싶지 않은 일입니다. 컨트롤러에서 DOM 요소와 속성을 조작하는 것은 AngularJS 세계에서 큰 일이 아닙니다.
자세한 정보는이 답변을 확인할 수 있습니다. https://stackoverflow.com/a/12431211/1418796
참고 URL : https://stackoverflow.com/questions/17240411/pass-a-reference-to-dom-object-with-ng-click
'programing tip' 카테고리의 다른 글
알파벳의 모든 문자 배열을 생성하는 더 나은 방법 (0) | 2020.11.19 |
---|---|
pydot이 Windows 8에서 GraphViz의 실행 파일을 찾을 수없는 이유는 무엇입니까? (0) | 2020.11.19 |
파이썬에서 점과 쉼표가있는 문자열을 부동 소수점으로 어떻게 변환 할 수 있습니까? (0) | 2020.11.19 |
PHP : 예외를 포착하고 실행을 계속할 수 있습니까? (0) | 2020.11.19 |
전체 단어를 고려하여 문자열에서 처음 100 자 가져 오기 (0) | 2020.11.19 |