본문 바로가기
CLASS/SERVLET

#2-1 / checkbox 및 라디오 핸들링

by hingu 2024. 5. 29.

❗ checkbox 는 기본적으로 value값을 적용하게 되어있음

해당 값이 없을 경우 - null로 적용되며 해당 파라미터를 처음부터 변수선언 시 조건문에 error가 발생함

또한 equals라는 메소드 사용면 문제 발생

=> 체크박스(checked 안되어있고) 체크 안할시 null값 들어옴 - 핸들링 불가 (checkbox만 !)

     프론트에서 아무리 input type checkbox value값을 변경해줘도 체크가 되어잇지 않으면 뭐가됐는 걍 null로 들어옴

      equals 도 절대 X

 

❗ radio 처리방식 : 무조건 데이터가 전송됨 (on / off 형태로 출력 - 중복 name값 사용하므로 value 무조건 사용)

   - intert() 사용시 연산기호 가능

 


⚡ checkbox
<body>
	<form action="./agree.do" id="f" method="post" enctype="application/x-www-form-urlencoded">
		자동로그인 : <input type="checkbox" name="ck" value="Y"><br>
		약관 정책 : <input type="radio" name="ag" value="agree_Y">동의함 <input type="radio" name="ag" value="agree_N">동의안함 <br>
		<input type="button" value="전송" onclick="gopage()">
	</form>

</body>
<script type="text/javascript">
	function gopage(){
		f.submit();
	}
</script>

 

public class agree extends HttpServlet {
	private static final long serialVersionUID = 1L;

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		//checkbox
		String ck="";
		if(request.getParameter("ck") == null) {
			ck="N";
		}else {
			ck= request.getParameter("ck");
		}
		System.out.println("checkbox : " + ck); 
		
		//radio
		String ag = request.getParameter("ag").intern();
		if(ag == "on") {
			System.out.println("동의안함");
		}else {
			System.out.println("동의함");
		}
	}

}

 

'CLASS > SERVLET' 카테고리의 다른 글

#2-4 / double form  (0) 2024.05.29
#2-3 / html 태그별 데이터 전송  (0) 2024.05.29
#2-2 / 검색에 따른 get 전송방식  (0) 2024.05.29
#1-2 / Front form태그 + servlet  (0) 2024.05.28
#1-1 / Servlet start,setting  (0) 2024.05.28