- select 요소 아래의 모든 옵션 요소가 selected 속성을 지정하지 않으면 기본적으로 첫 번째 속성이 선택됩니다.
- 선택된 옵션 요소의 인덱스는 select.selectedIndex를 통해 얻을 수 있습니다.
- 선택된 옵션 요소는 select.options[select.selectedIndex]를 통해 얻을 수 있습니다.
- 옵션 요소 <option selected="selected" value="value3">text3</option>, 옵션 요소의 value 속성 값은 option.value를 통해 얻을 수 있습니다. 즉, 옵션 요소 내의 텍스트는 value3입니다. option.text, 즉 text3을 통해 얻습니다.
- option 요소가 value 속성을 정의하지 않으면 IE에서는 option.value를 얻을 수 없지만 Safari, Opera, FireFox는 여전히 option.value를 통해 얻을 수 있으며 값은 option.text와 동일합니다.
- option.attributes.value && option.attributes.value.specified를 사용하여 옵션 요소가 값 속성을 정의하는지 여부를 확인할 수 있습니다.
따라서 현재 선택 요소 값을 가져오는 스크립트는 다음과 같습니다.
var getSelectValue = 함수(선택) {
var idx = select.selectedIndex,
옵션,
값;
if (idx > -1) {
옵션 = select.options[idx];
값 = 옵션.속성.값;
return (value && value.specified) ? 옵션.값 : 옵션.텍스트);
}
null을 반환;
}