[JSP] 선택삭제 기능 구현(체크박스)

728x90

[ 2023. 5. 20 작성]

선택박스 값 보내기

1.반복문 이용을 안할 경우

 

See the Pen Untitled by k-young-ju (@k-young-ju) on CodePen.

 

 

2.반복문을 이용할 경우

 

<script>
function checkall() {//체크박스 전체 선택 , 해제
	if(Form1.all.checked) {
		for(i=1; i < (document.Form1.length); i++){
			document.Form1.elements[i].checked = true;
		}
	}else{
		for(i=1; i < (document.Form1.length); i++){
			document.Form1.elements[i].checked = false;
		}
	}
}

function check_select(){//체크박스 부분 선택
	myForm = document.getElementsByName("ap_check");
	myFormLen = myForm.length; //체크박스 전체수
	if(myFormLen==1){//체크박스 전체 리스트 수가 1개 일때
		document.Form1.ap_check.checked = true;
		check_one=document.Form1.ap_check.value;
		result = confirm("삭제하시겠습니까?");
		if(result == true){
			location.href="delete_select.jsp?code=<%=code%>&uids="+check_one;
		}
		return; 
		 
	} 
	for(var i = 0;  i < document.Form1.ap_check.length; i++) {
		 if(document.Form1.ap_check[i].checked == true) break;
	}
	if(i == document.Form1.ap_check.length) {
		alert("선택된 항목이 없습니다.");         
		return;
	}
	if(confirm('삭제하시겠습니까?')){
		check_select2();
		return;
	} 
}
function check_select2(){//체크박스 전체 리스트 수가 2개 이상일 때
	var check_hide = new Array();

	for(var i = 0;  i < document.Form1.ap_check.length; i++) {
		if(document.Form1.ap_check[i].checked == true) {
			check_hide[i] = document.Form1.ap_check[i].value;
		}
	}
	
	location.href="delete_select.jsp?code=<%=code%>&uids="+check_hide;
	
}
</script>
<form name ="Form1" id = "Form1">
<table width=1100 border=1 align="center">
	<tr>
	    <td width=20><input type = "checkbox" name = "all" value="checkbox" onclick = "checkall()"></td>
		<td width =80 class="td_title">No</td>
		<td width = 390 class="td_title">제목</td>
		<td width = 70 class="td_title">글쓴이</td>
		<td width = 100 class="td_title">날짜</td>
		<td width = 60 class="td_title">조회수</td>
	</tr>
</table>
<table width=1100 border=0 style="border-bottom: 1px solid black">
<%
         
           while(rs.next()){
					int uid = rs.getInt("uid");
					String subject = rs.getString("subject");
					String gongji = rs.getString("gongji");
					String name = rs.getString("name");
					String id = rs.getString("id");
					int com_count = rs.getInt("com_count");
					String signdate = rs.getString("signdate").substring(0,10);
					int ref = rs.getInt("ref");
					String file1 = rs.getString("file");
					String thread = rs.getString("thread");
					int len_thread =thread.length();
%>
    <tr>
	    <td width=20><input type="checkbox" name = "ap_check" value='<%=uid %>' ></td>
		<td width =80 style="color:red"><b>[넘버링]</b></td>
		<td width = 390><b>
			<table border=0>
				<tr>
					<td width = 100 ></td>
					<td style="text-align: left">
						<a href="view.jsp?code=<%=code%>&uid=<%=uid%>" style="color:red"><%=subject %><span style="color: blue">[<%=com_count %>]</span></a></b>
					</td>
				</tr>
			</table>			
		</td>
		<td width = 70><%=name %></td>
		<td width = 100><%=signdate %></td>
		<td width = 60><%=ref %></td>
	</tr>
<%
   
   }
	rs.close();
	stmt.close();
	con.close();
%>
</table>
<table>
    <tr>
       <td>
          <input type="button" onClick="check_select();return false;" value="선택삭제">
       </td>
    </tr>
</table>
</form>

 

선택박스값 받기

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ include file="/include/header2.jsp" %>

<%
String code =request.getParameter("code");

out.print(code);
String ids = request.getParameter("uids");

String[] uid_ch = ids.split(",");

for(int i=0;i<uid_ch.length;i++){
	
	String sql = "delete from "+code+" where uid = '"+uid_ch[i]+"'";
	
	Connection con = DriverManager.getConnection(url, user, password);
	Statement stmt = con.createStatement();
	stmt.executeUpdate(sql);
	out.print(sql);out.print("<br>");
}

%>

<script>
	location.href="list.jsp?code=<%=code%>";
</script>

결과

'Tools & Functions > Project 기능들' 카테고리의 다른 글

[JSP] 메일 인증 기능 구현  (0) 2024.05.19
[JSP] 댓글 기능 구현  (0) 2024.05.19
[JSP] 영상 업로드 기능구현  (0) 2024.05.19
[JSP] 쪽지 기능 구현  (0) 2024.05.19
[JSP] 게시판 관련 기능  (0) 2024.05.19