[HTML] select, option ์์์ ์ฃผ์ ์์ฑ๊ณผ ํน์ง
Option() ์์ฑ์ ํจ์ | MDN
๐ <option> ์์์ selected ์ดํธ๋ฆฌ๋ทฐํธ์ ์๋ฐ์คํฌ๋ฆฝํธ๋ก ์ ๊ทผํ๋ option.selected ํ๋กํผํฐ๋ ์๋ก ๋
๋ฆฝ์ ์ธ ๊ธฐ๋ฅ์ ๊ฐ์ง๋ค. <option> ์์์ selected ์ดํธ๋ฆฌ๋ทฐํธ๋ ์ด๊ธฐ ์ ํ ์ํ๋ฅผ ๋ํ๋ด๊ณ , option.selected ํ๋กํผํฐ๋ ํ์ฌ ์ ํ ์ํ๋ฅผ ๋ฐ์ํ๊ณ  ์ ์ดํ๋ ๋ฐ ์ฌ์ฉํ๋ค.
// Option() ์์ฑ์๋ฅผ ์ฌ์ฉํ๋ฉด document.createElement() ๋ณด๋ค ๋ ๊ฐ๊ฒฐํ๊ฒ ์์ฑํ  ์ ์๋ค
new Option(text?, value?, defaultSelected?, selected?);
โ  text : <option> ์์์ ํ์ํ  ํ
์คํธ | ๊ธฐ๋ณธ๊ฐ "" ๋น ๋ฌธ์์ดtext์ ์ง์ ํ ๊ฐ์ option.textContent๋ก ์ค์ ๋๋ค.
โก value : <option> ์์์ value ํ๋กํผํฐ | ์๋ต ์ text ๊ฐ ์ฌ์ฉ
์ต์
์ ์ ํํ๋ฉด option.value ๊ฐ์ด select.value๋ก ์ง์ ๋๋ค.
โข defaultSelected : ์ด๊ธฐ ์ ํ ์ํ๋ฅผ ๋ํ๋ด๋ ๋ถ๋ฆฌ์ธ | ๊ธฐ๋ณธ๊ฐ falsetrue ์ง์  ์ ์ต์
 ์์์ selected ์ดํธ๋ฆฌ๋ทฐํธ๊ฐ ์ถ๊ฐ๋๋ค. ์ ์  HTML์ด๋ ํ์ด์ง๋ฅผ ์ฒ์ ๋ ๋๋งํ  ๋ selected ์ดํธ๋ฆฌ๋ทฐํธ๊ฐ ์์ผ๋ฉด ์
๋ ํธ ๋ฐ์ค๋ ํด๋น ์ต์
์ ์ ํํ๊ณ  select.value ํ๋กํผํฐ์ ๋ฐ์ํ๋ค.
ํ์ง๋ง ํ์ด์ง ๋ก๋ ํ ๋์ ์ผ๋ก ์ถ๊ฐํ ์ต์
 ์์๋ selected ์ดํธ๋ฆฌ๋ทฐํธ๊ฐ ์์ด๋ ์ ํ ์ํ์๋ ์ํฅ์ ์ฃผ์ง ์๋๋ค. ์ฆ, ์ต์
 ์์์ selected ์ดํธ๋ฆฌ๋ทฐํธ๋ ์
๋ ํธ ๋ฐ์ค ์ ํ๊ณผ ๊ด๊ณ์์ด ์ด๊ธฐ ์ํ๋ง ๋ํ๋ธ๋ค. ์ต์
์ ์ ํํ ์ํ๋ก ๋ง๋ค๋ ค๋ฉด Option() ์์ฑ์ 4๋ฒ์งธ ์ธ์์ธ selected ๊ฐ์ true๋ก ์ง์ ํด์ผ ํ๋ค.
์ด๋ ํ ์ต์
๋ ์ ํํ์ง ์์๋ค๋ฉด ์ฒซ ๋ก๋ ์ ๋ธ๋ผ์ฐ์ ๊ฐ ์ฒซ ๋ฒ์งธ ์ต์
์ ์๋์ผ๋ก ์ ํํ๋ค. ์ด๋ selected ์ดํธ๋ฆฌ๋ทฐํธ๋ ์ถ๊ฐ๋์ง ์๊ณ , option.defaultSelected ํ๋กํผํฐ ๊ฐ์๋ ์ํฅ์ ์ฃผ์ง ์๋๋ค. ๋์  option.selected ํ๋กํผํฐ ๊ฐ์ true๊ฐ ๋๋ค.
โฃ selected : ํ์ฌ ์ ํ ์ํ๋ฅผ ๋ํ๋ด๋ ๋ถ๋ฆฌ์ธ | ๊ธฐ๋ณธ๊ฐ falsetrue ์ง์  ์ ํด๋น ์ต์
์ด ์ ํ๋๊ณ  option.selected ํ๋กํผํฐ๋ true ๊ฐ์ ๊ฐ์ง๋ค. option.selected ํ๋กํผํฐ ๊ฐ์ด true์ฌ๋(์
๋ ํธ ๋ฐ์ค์์ ์ต์
์ ์ ํํ ์ํ) ์ด๊ธฐ ์ํ๋ฅผ ๋ํ๋ด๋ selected ์ดํธ๋ฆฌ๋ทฐํธ๋ ์ถ๊ฐ๋์ง ์๋๋ค.
<select> ์ฃผ์ ์์ฑ | MDN
๐ ์ต์
 ์์๋ฅผ ๋์ ์ผ๋ก ์ถ๊ฐํ  ๋ select.add(option|optiongroup) ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค | MDN
โ  name : ์
๋ ํธ ๋ฐ์ค(๋๋กญ๋ค์ด ๋ชฉ๋ก)์ ์ด๋ฆ
ํผ ์ ์ถ์ ์๋ฒ์์ ํด๋น ๋ฐ์ดํฐ๋ฅผ ์๋ณํ๊ธฐ ์ํ ์ด๋ฆ.
name ์์ฑ์ด ์์ผ๋ฉด ํผ์ ์ ์ถํด๋ ์
๋ ํธ ๋ฐ์ค ๊ฐ์ด ์๋ฒ๋ก ์ ์ก๋์ง ์๋๋ค.
์๋ฐ์คํฌ๋ฆฝํธ๋ก ์์๋ฅผ ์ฐธ์กฐํ  ๋๋ ์ฌ์ฉํ  ์ ์๋ค. ์) document.forms.myForm.selectName
โก options : ์ต์
 ๋ชฉ๋ก HTMLCollection (์ ์ฌ๋ฐฐ์ด)
โข multiple : ์ฌ๋ฌ ์ต์
 ์ ํ ๊ฐ๋ฅ ์ฌ๋ถ | ๊ธฐ๋ณธ๊ฐ falsetrue ์ง์  ์ Cmd(Ctrl) + Click์ผ๋ก ์ฌ๋ฌ ์ต์
์ ์ ํํ  ์ ์๋ค. true ์ง์  ์ size ๊ฐ๊ณผ ๋ฌด๊ดํ๊ฒ ํญ์ ๋ชฉ๋ก(๋ฆฌ์คํธ ๋ฐ์ค) ํํ๋ก ํ์.
โฃ value : ํ์ฌ ์ ํํ ์ต์
์ value
multiple ์์ฑ์ด true์ผ ๋ ์ฌ๋ฌ ์ต์
์ ์ ํํ๋๋ผ๋ ์ฒซ ๋ฒ์งธ๋ก ์ ํํ ์ต์
์ ๊ฐ๋ง ๋ฐํ.
โค selectedIndex : ํ์ฌ ์ ํํ ์ต์
์ ์ธ๋ฑ์ค | ์ ํํ ์ต์
 ์์ผ๋ฉด -1 ๋ฐํ
multiple ์์ฑ์ด true์ผ ๋๋ ์ฒซ ๋ฒ์งธ๋ก ์ ํํ ์ต์
์ ์ธ๋ฑ์ค๋ง ๋ฐํ.
โฅ selectedOptions : ํ์ฌ ์ ํํ ์ต์
 ์์๋ค์ด ํฌํจ๋ HTMLCollection
multiple ์์ฑ์ ํตํด ์ฌ๋ฌ ์ต์
์ ์ ํํ  ์ ์๊ธฐ ๋๋ฌธ์ ํญ์ ๋ชฉ๋ก ํํ๋ก ๋ฐํ.
โฆ size : ์
๋ ํธ ๋ฐ์ค์ ๋ช ๊ฐ์ ์ต์
์ ํ์ํ ์ง ์ง์  | ๊ธฐ๋ณธ๊ฐ 0
๋๋กญ๋ค์ด ํํ๋ก ํ์: size ์์ฑ์ด 1 ์ดํ์ด๊ณ , multiple ์์ฑ์ด false ์ผ ๋.
๋ฆฌ์คํธ ๋ฐ์ค ํํ๋ก ํ์(ํญ์ ํผ์นจ): size ์์ฑ์ด 2 ์ด์์ด๊ฑฐ๋, multiple ์์ฑ์ด true ์ผ ๋.
'๐ช Programming' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋๊ธ
์ด ๊ธ ๊ณต์ ํ๊ธฐ
- 
๊ตฌ๋
ํ๊ธฐ
๊ตฌ๋ ํ๊ธฐ 
- 
์นด์นด์คํก
์นด์นด์คํก 
- 
๋ผ์ธ
๋ผ์ธ 
- 
ํธ์ํฐ
ํธ์ํฐ 
- 
Facebook
Facebook 
- 
์นด์นด์ค์คํ ๋ฆฌ
์นด์นด์ค์คํ ๋ฆฌ 
- 
๋ฐด๋
๋ฐด๋ 
- 
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ 
- 
Pocket
Pocket 
- 
Evernote
Evernote 
๋ค๋ฅธ ๊ธ
- 
[AWS] VSCode์์ AWS EC2 ์๊ฒฉ ์ฐ๊ฒฐ / EC2 ๋ฉ๋ชจ๋ฆฌ ๋ถ์กฑ ํด๊ฒฐ[AWS] VSCode์์ AWS EC2 ์๊ฒฉ ์ฐ๊ฒฐ / EC2 ๋ฉ๋ชจ๋ฆฌ ๋ถ์กฑ ํด๊ฒฐ2024.05.29
- 
[JS] ๋ฐ๋๋ผ ์๋ฐ์คํฌ๋ฆฝํธ๋ก ๋ง๋ฆฌ์ค ๋ฌ๋ ๊ฒ์ ๊ตฌํํ๊ธฐ[JS] ๋ฐ๋๋ผ ์๋ฐ์คํฌ๋ฆฝํธ๋ก ๋ง๋ฆฌ์ค ๋ฌ๋ ๊ฒ์ ๊ตฌํํ๊ธฐ2024.05.29
- 
[Algorithm] ์์ด / ์กฐํฉ ๊ฐ๋ ๊ณผ ์๊ณ ๋ฆฌ์ฆ ๊ตฌํ[Algorithm] ์์ด / ์กฐํฉ ๊ฐ๋ ๊ณผ ์๊ณ ๋ฆฌ์ฆ ๊ตฌํ2024.05.28
- 
[React] ๋ฆฌ์กํธ์์ setTimeout ๋ ํธํ๊ฒ ์ฐ๊ธฐ[React] ๋ฆฌ์กํธ์์ setTimeout ๋ ํธํ๊ฒ ์ฐ๊ธฐ2024.05.28