Computer >> 컴퓨터 >  >> 프로그래밍 >> HTML

HTML DOM select disabled 속성 – 드롭다운 목록 활성화·비활성화하기

HTML DOM select disabled 속성이란?

HTML DOM의 select disabled 속성은 HTML 문서 안에 있는 드롭다운 목록(select 요소)이 현재 비활성화된 상태인지를 확인하거나, 이를 활성화 또는 비활성화 상태로 변경할 수 있는 속성입니다.

이 속성은 불리언(Boolean) 값을 다루며, true이면 해당 드롭다운 목록이 비활성화되어 사용자가 옵션을 선택할 수 없고, false이면 정상적으로 조작할 수 있습니다.

문법(Syntax)

select disabled 속성의 기본 문법은 다음과 같습니다.

1. disabled 값 반환하기

object.disabled

2. disabled 값 설정하기

object.disabled = true | false
  • true : 드롭다운 목록을 비활성화합니다.
  • false : 드롭다운 목록을 활성화합니다.

예제 코드(Example)

아래 예제는 버튼을 클릭할 때마다 드롭다운 목록의 활성화 상태를 전환(toggle)하는 방법을 보여줍니다.

<!DOCTYPE html>
<html>
<head>
<style>
   html{
      height:100%;
   }
   body{
      text-align:center;
      color:#fff;
      background: linear-gradient(62deg, #FBAB7E 0%, #F7CE68 100%) center/cover no-repeat;
      height:100%;
   }
   p{
      font-weight:700;
      font-size:1.2rem;
   }
   .drop-down{
      width:35%;
      border:2px solid #fff;
      font-weight:bold;
      padding:8px;
   }
   .btn{
      background:#0197F6;
      border:none;
      height:2rem;
      border-radius:2px;
      width:35%;
      margin:2rem auto;
      display:block;
      color:#fff;
      outline:none;
      cursor:pointer;
   }
   .show{
      font-size:1.5rem;
      font-weight:bold;
   }
</style>
</head>
<body>
<h1>DOM Select disabled Demo</h1>
<p>Hi, Select your favourite subject:</p>
<select class='drop-down'>
<option>Physics</option>
<option>Maths</option>
<option>Chemistry</option>
<option>English</option>
</select>
<button onclick="disEna()" class="btn">Disable/Enable</button>
<div class="show"></div>
<script>
   function disEna() {
      var dropDown = document.querySelector(".drop-down");
      var showMsg = document.querySelector(".show");
      showMsg.innerHTML ="";
      if (dropDown.disabled === true){
         dropDown.disabled = false;
         showMsg.innerHTML ="Previously, I was disabled but now I am enabled";
      }else{
         dropDown.disabled = true;
         showMsg.innerHTML ="Previously, I was enabled but now I am disabled";
      }
   }
</script>
</body>
</html>

코드 설명

  • document.querySelector(".drop-down") : 클래스명이 drop-down인 select 요소를 가져옵니다.
  • dropDown.disabled === true : 현재 드롭다운 목록이 비활성화 상태인지 검사합니다.
  • 비활성화 상태라면 false로 바꿔 활성화하고, 그렇지 않다면 true로 바꿔 비활성화합니다.
  • 상태 변화에 따라 결과 메시지를 화면에 출력합니다.

실행 결과(Output)

위 코드를 실행하면 다음과 같은 화면이 나타납니다.

HTML DOM select disabled 속성 – 드롭다운 목록 활성화·비활성화하기

Disable/Enable 버튼을 클릭하면 드롭다운 목록이 비활성화됩니다. 첫 번째 클릭에서는 비활성화가 적용됩니다.

HTML DOM select disabled 속성 – 드롭다운 목록 활성화·비활성화하기

버튼을 다시 한 번 클릭하면 드롭다운 목록이 다시 활성화됩니다.

HTML DOM select disabled 속성 – 드롭다운 목록 활성화·비활성화하기

정리

HTML DOM의 select disabled 속성을 활용하면 자바스크립트만으로 드롭다운 목록의 사용 가능 여부를 손쉽게 제어할 수 있습니다. 폼 입력 중 특정 조건에서 선택을 막거나, 로딩 중에 사용자 입력을 잠시 차단하는 등 다양한 UI 시나리오에서 유용하게 사용됩니다.