제가 쓴 책/HTML5, CSS3 and JavaScript

9.8 option, optgroup 요소

edupicker(체르니) 2013. 7. 31. 21:51

9.8 option, optgroup 요소


option 요소는 select, datalist 요소의 자식 요소로 사용되어 해당 요소들의 리스트를 구성하는 항목을 나타내는데 이용되거나 optgroup 요소의 자식요소로 이용될 수 있으며 다음과 같은 고유한 속성이 정의되어 있습니다.


속성

기능

disabled

해당 항목이 사용 불가임을 명시

label

긴 항목에 대한 짧은 라벨

selected

페이지가 처음 로드될 때 사전에 선택되져야 할 항목을 명시할 때

value

항목값을 의미하며 이 값이 웹서버로 전달되게 됨


앞에서 사용한 selectEx.html 파일을 메모장으로 열어서 다음과 같이 <select> 시작태그와 마침 태그 안에 코드를 수정합니다.

<select>
  <option value="
사과">사과</option>
  <option value="
딸기">딸기</option>
  <option value="
" selected="selected"></option>
  <option value="
키위" label="키위">키위(양다래 열매)</option>

  <option value="
포도">포도</option>
</select>


위에서 보는 것처럼 selected 속성을 이용하여 기본적으로 가 선택되어 나타나도록 하고 label
 
속성을 이용하여 키위(양다래 열매)” 형태로 표시되어야 할 것을 키위로 나타나도록 코드를 작성합니다. 그 다음 optionEx.html로 다른 이름으로 저장하고 IE를 통해 보면 다음과 같이 나타납니다



위와 같이 작성한대로 키위(양다래 열매)” 형태로 표시되지 않고 label 속성에 설정된대로 키위로 표시되어 나타납니다. 이해가 잘 안되면 키위” option 요소 부분을 다음과 같이 수정합니다.

<option value="
키위">키위(양다래 열매)</option>

다시 IE를 통해 보면 다음과 같이 나타나므로 label 속성이 어떤 기능을 하는지 이제 이해가 될 것입니다.



다음으로 optgroup 요소는 드롭 다운 리스트에서 관련된 항목들을 그룹화하여 나타낼 때 사용하는 요소로 하나의 optgroup의 라벨을 명시하는데 사용하는 label 속성과 optgroup의 사용 불가를 설정할 수 있는 disable 속성을 optgroup 요소의 고유한 속성으로 사용할 수 있습니다.
이제 다음과 같은 형태의 관련된 항목들이 그룹화되어 나타나도록 하는 예제를 해볼까요?


프로그래밍 언어
  C#
  JAVA
  Objective-C
데이터베이스
  Oracle
  MS SQL Server
  MySQL
  IBM DB2


메모장을 열어서 기본적인 코드를 작성하고 다음과 같이 <body> 시작태그와 마침 태그 안에 코드를 작성합니다.


<body>
  <form>
    <select>
      <optgroup label="
프로그래밍 언어">
        <option value ="CSharp">C#</option>
        <option value ="Java">JAVA</option>
        <option value ="Objective-C">Objective-C</option>       
      </optgroup>
      <optgroup label="
데이터베이스">
        <option value ="Oracle">
오라클</option>
        <option value ="MSSQL">MS SQL
서버</option>
        <option value ="MySQL">MySQL</option>
        <option value ="DB2">IBM DB2</option>               
      </optgroup>  
    </select>
  </form>
</body>


이제 "optgroupEx.html"로 저장하고 IE를 통해 보면 다음과 같이 나타납니다.






- 본 저작물은 본인이 2011년 상반기부터 2012년 여름 즈음까지 도서 출판을 목적으로 약 470 페이지(A4, 폰트 10)으로 작성한 원본 중 HTML5 요소(Element)에 대한 부분을 그대로를 공개하는 것으로 본 저작물에 대한 모든 권리는 본인(원철연)에서 있음을 알립니다.
개인적인 학습 목적으로 사용을 허용하며 온오프라인의 베포나 펌상업적인 용도의 사용은 삼가해주시기 바랍니다. 끝으로 학교나 비영리 단체에서의 경우 본 저작물을 비상업적인 용도로 활용하고자 할 경우 연락처를 비밀댓글로 남겨주시면 연락드리겠습니다.


끝으로 책 한권 분량에 대한 목차(링크 포함)은 "http://fromyou.tistory.com/581"에서 다운로드 받아서 필요하신 학습을 하실 수 있으며 조금이나마 도움이 되셨으면 합니다.