[ HTML ] <select>, <option> 태그
2024. 3. 1. 23:55ㆍ· FRONT-END/└ HTML
환경 : Spring Tool Suite 4
<select> 태그
- <select> 태그는 말그대로 선택하는 태그이다.
- <select> 태그 안에서 <option>태그를 활용하여 <option> 태그 중에 원하는 항목을 선택할 수 있다.
속성
속성명 | 설명 |
label | <option> 태그에 표시할 글자 속성을 정함 <option> 태그 내부의 글자보다 우선 적용됨 |
name | <select>에 작성하여 <form> 제출 시 전송될 파라미터의 이름을 지정 |
value | 실제 선택된 값을 처리 <form>이 제출될 경우 value값이 전송됨 |
size | <option> 개수 지정 size 속성보다 많은 개수의 <option>이 존재할 경우 스크롤이 생김 |
multiple | 특수 키를 이용하여 다중선택 가능 |
required | 값이 무조건 존재해야 함 |
disabled | 비활성화. 사용자가 조작할 수 없음 |
optgroup | 복잡한 <select> 구조 구현 |
[ 메뉴 등록 페이지를 활용한 예시 - 전체코드 ]
- MenuController.java
@Controller
@RequestMapping("/menu")
public class MenuController {
@Autowired
public MenuDao dao;
@GetMapping("/insert")
public String insert1() {
return "/WEB-INF/views/menu/insert.jsp";
}
@PostMapping("/insert")
public String insert2(@ModelAttribute MenuDto dto) {
dao.insert(dto);
return "redirect:insertComplete";
}
@RequestMapping("/insertComplete")
public String insertComplete() {
return "/WEB-INF/views/menu/insertComplete.jsp";
}
}
- insert.jsp
<select name="...">
<option value="...">...</option>
<option value="...">...</option>
<option value="...">...</option>
</select>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<h1>메뉴 등록</h1>
<form action="insert" method="post">
메뉴명 (한글) <input type="text" name="menuNameKor" required> <br><br>
메뉴명 (영어) <input type="text" name="menuNameEng" required> <br><br>
메뉴유형
<select name="menuType" required>
<option value="">선택하세요</option>
<option value="커피">커피</option>
<option value="스무디">스무디</option>
<option value="에이드">에이드</option>
<option value="디저트">디저트</option>
</select>
<br><br>
메뉴가격 <input type="number" name="menuPrice" required> <br><br>
<button>메뉴등록</button>
</form>
- 출력 결과
[ 설명 ]
<select name="menuType" required>
<option value="">선택하세요</option>
<option value="커피">커피</option>
<option value="스무디">스무디</option>
<option value="에이드">에이드</option>
<option value="디저트">디저트</option>
</select>
(+) name 속성에 데이터베이스로 전송할 수 있는 해당 변수명을 적어준다.
(+) required="required"를 생략하여 required라고 적을 수 있다.
(+) value 값을 주지 않고 ""로 둔다면 선택하지 못하는 <option> 태그가 된다.
따라서 "선택하세요"와 같이 사용자에게 정보를 제공해야하는 경우 등에 사용된다.
개인 공부 기록용입니다:)
728x90
'· FRONT-END > └ HTML' 카테고리의 다른 글
[ HTML ] 표 만들기 (0) | 2024.03.09 |
---|---|
[ jsp / html ] 정보 수정 페이지에서 성공/실패 페이지로 (0) | 2024.03.03 |
[ HTML ] <input> 태그 속성 Type의 값 (0) | 2024.02.28 |
[ HTML ] <input> 태그의 속성 (0) | 2024.02.27 |
[ HTML ] <A> 태그 (0) | 2024.02.24 |