순수 자바스크립트로 값을 변경하거나 조작을 할 경우 이벤트로는 감지를 못 한다.
아래와 같은 이벤트로는 불가능
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 라는 기능을 이용해서 처리하면 된다.