본문 바로가기

개발 관련 기록과 정리/Javascript

자바스크립트 변경에 따른 감지 처리

순수 자바스크립트로 값을 변경하거나 조작을 할 경우 이벤트로는 감지를 못 한다.

 

아래와 같은 이벤트로는 불가능

document.querySelector('#아이디').addEventListener('input', (event) => {console.log(event)});

 

자바스크립트로 변경 되었을 때 감지해서 처리하는 방식을 아래와 같이 한다.

function setPrdcodVisible() {
	let observer = new MutationObserver((mutations) => {
		let muValue = mutations[0].target.value;
		let COMGBN = document.querySelector('#COMGBN');
		if (muValue == 'N') {
			COMGBN.style.display = 'none';
		} else {
			COMGBN.style.display = '';
		}
        // observer.disconnect(); 1번 쓰고 끝내려면 사용
	});
	let option = { attributes: true };
	observer.observe(PRDGBN, option);
}

MutationObserver 라는 기능을 이용해서 처리하면 된다.