checkbox 를 통한 게시물 삭제
1. 화면 스크립트에서 체크박스 선택시 체크박스 모두 선택
$("input:checkbox[name='all_check']").bind('click', function(){
if($(this).is(":checked") ==true ){
$("input:checkbox[name='idxArr']").each(function(){
$(this).attr("checked", true);
});
}else {
$("input:checkbox[name='idxArr']").each(function(){
$(this).attr("checked", false);
});
}
});
2. 목록 화면에
<input type="checkbox" name="all_check" id="all_check" />
<input type="checkbox" name="idxArr" value="${result.idx}"/>
3. controller 에서 받기
String[] idxArr = request.getParameterValues("idxArr");
4. vo setting
private String[] idxArr;
public String[] getUcIdxArr() {
return idxArr;
}
public void setUcIdxArr(String[] idxArr) {
String idxTemp = "";
if(idxArr != null) {
for(int i = 0; i < idxArr.length; i++) {
idxTemp += idxArr[i];
if(i < idxArr.length - 1) {
idxTemp += ",";
}
}
}
//this.idxArr = StringUtils.isNotEmpty(idxArr) ? idxArr.split(",") : null;
this.idxArr = idxTemp.split(",");
}
5. controller 에서 vo 에 set
vo.setIdxArr(idxArr);
6. ibatis 에서 처리
<isNotEmpty prepend="AND" property="idxArr">
<iterate prepend="IDX IN" property="idxArr" open="(" conjunction="," close=")">
#idxArr[]#
</iterate>
</isNotEmpty>
다른 방법으로도 했었지만,
오늘은 이렇게 해봄