- getElementbyTagName('') / querySelector('') /querySelectorAll('') 차이점은?
- HTML
<button>태그의disabled라는 attribute란?
로그인 창 버튼 활성/비활성화 기능 구현
const loginButton = document.getElementsByTagName('button')[0];
const idInput = document.querySelector('.idInput');
const pwInput = document.querySelector('.pwInput');
function active(){
if(idInput.value && pwInput.value) {
loginButton.removeAttribute("disabled","");
loginButton.style.backgroundColor = "#5586EB";
} else {
loginButton.setAttribute("disabled","");
loginButton.style.backgroundColor = "#c4e1fb";
}
}
idInput.addEventListener('keyup', active);
pwInput.addEventListener('keyup', active);
getElementByTagName('') 는 특정 태그를 가진 모든 요소를 선택하며,선택된 요소는 유사 배열 객체로 반환된다.[index]값을 줘야한다.ex. const loginButton = document.getElementsByTagName('button')[0]querySelector('')는 CSS 선택자로 요소를 선택하게 해준다.ex. document.querySelector('.idInput')querySelectorAll('')은 특정 CSS 선택자를 가진 모든 요소를 배열로 가져오는 메서드이기때문에 getElementByTagName('') 처럼 뒤에 [index]값을 줘야한다.<button>태그에 disabled라는 attribute값을 부여하고 이를 활용하여 버튼 활성/비활성화 시키는 법은?<button>태그에 disabled라는 attribute값을 부여removeAttribute() 메서드 활용ex. loginButton.removeAttribute("disabled","")setAttribute()메서드 활용ex. loginButton.setAttribute("disabled","");