Select tag

양은지·2023년 3월 30일
0

JavaScript

목록 보기
17/31

Select tag

<form class="container my-5 form-group">
    <p>상품선택</p>
    <select class="form-select mt-2">
        <option value="cap">모자</option>
        <option value="shirt">셔츠</option>
    </select>
    <select class="form-select mt-2 form-hide">
        <option>95</option>
        <option>100</option>
        <option>105</option>
        <option>110</option>
    </select>
</form>
  • select 는 input 과 같이 사용자 인풋을 받는 태그지만, 드롭다운 형태로 미리 설정해놓은 옵션만 선택할 수 있다
  • select > option tag 로 응답을 설정할 수 있다
  • option은 value 값을 설정할 수 있는데, 따로 지정하지 않을 경우 html 값으로 대체된다

Responsive Select UI

.form-hide {
    display: none;
}
document.querySelectorAll('.form-select')[0].addEventListener('input', function() {
    if ( this.value == 'shirt' ) {
        document.querySelectorAll('.form-select')[1].classList.remove('form-hide');
    } else {
        document.querySelectorAll('.form-select')[1].classList.add('form-hide');
    }
})
  • 위와 같이 select 에서 유저가 입력한 값은 event listener의 input event 발생 시 value로 받아올 수 있다 - (document.querySelectorAll('.form-select')[0].value)
  • 여기서 선택한 event 개체는 .form-select 이므로 이를 중복 선택할 때 this or function(e) & eCurrentTarget 으로 대체할 수 있다
profile
eunji yang

0개의 댓글