list에서 바로 수정된 내용 UPDATE관련 재질문입니다.
- 작성자 :
- 노*욱
- 작성일 :
- 2014-01-06 11:45:53
- 조회수 :
- 908
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
============== 답변 내용 ================
안녕하세요 프레임워크센터입니다.
수정하신 후 다음 액션을 리스트 화면을 조회하는 컨트롤러의 메서드를 호출한다면
다시 데이터베이스에서 조회하기 때문에 수정된 내용을 업데이트할 수 있습니다.
수고하세요.
=====================================
"리스트 화면을 조회하는 컨트롤로의 메서드를 호출" 방법을 알고 싶습니다.
==컨트롤러에서의 내용==
@RequestMapping("/sample/updateSample.do")
public String updateSample(
@ModelAttribute("searchVO") SampleDefaultVO searchVO,
SampleVO sampleVO,
BindingResult bindingResult, Model model, SessionStatus status)
throws Exception {
beanValidator.validate(sampleVO, bindingResult);
if (bindingResult.hasErrors()) {
model.addAttribute("sampleVO", sampleVO);
return "/sample/egovSampleRegister";
}
sampleService.updateSample(sampleVO);
status.setComplete();
return "forward:/sample/egovSampleList.do";
}
==============================
==SampleList.jsp 내용==
<script type="text/javaScript" language="javascript" defer="defer">
/* 글 수정 화면 function */
function fn_egov_select(id) {
...
}
/* 글 등록 화면 function */
function fn_egov_addView() {
...}
/* 글 목록 화면 function */
function fn_egov_selectList() {
...}
/* pagination 페이지 링크 function */
function fn_egov_link_page(pageNo){
...}
/* 글 등록 function */
function fn_egov_save() {
2014-01-06
frm = document.listForm;
frm.action = "<c:url value='/sample/updateSample.do'/>";
frm.submit();
}
</script>
</head>
<body>
<form:form commandName="searchVO" name="listForm">
<!-- <input type="hidden" name="selectedId" />
<input type="hidden" name="selectedFullname" /> -->
<div class="wrapper">
<div id="header">
사원관리
<div id="ibox" class="left">
<a href="javascript:fn_egov_selectList();">조회</a>
<%-- <a href='<c:url value="/sample/egovSampleList.do"/>'>조회</a> --%>
<a href="javascript:fn_egov_addView();">입력</a>
<a href="javascript:fn_egov_delete();">삭제</a>
<a href="javascript:fn_egov_save()">저장</a>
</div>
</div>
<!-- 바디 -->
<div id="body">
...
<c:forEach var="result" items="${resultList}" varStatus="status">
<form:form commandName="sampleVO" name="detailForm">
...
</form:form>
</c:forEach>
...
</form:form>
</body>
</html>
==================================
현재 리스트 조회페이지에서 리스트 중 일부 row를 수정 후 updateSample.do로 submit를 하면 처음 row만 업데이트가 되는 상태입니다.
안녕하세요 프레임워크센터입니다.
수정하신 후 다음 액션을 리스트 화면을 조회하는 컨트롤러의 메서드를 호출한다면
다시 데이터베이스에서 조회하기 때문에 수정된 내용을 업데이트할 수 있습니다.
수고하세요.
=====================================
"리스트 화면을 조회하는 컨트롤로의 메서드를 호출" 방법을 알고 싶습니다.
==컨트롤러에서의 내용==
@RequestMapping("/sample/updateSample.do")
public String updateSample(
@ModelAttribute("searchVO") SampleDefaultVO searchVO,
SampleVO sampleVO,
BindingResult bindingResult, Model model, SessionStatus status)
throws Exception {
beanValidator.validate(sampleVO, bindingResult);
if (bindingResult.hasErrors()) {
model.addAttribute("sampleVO", sampleVO);
return "/sample/egovSampleRegister";
}
sampleService.updateSample(sampleVO);
status.setComplete();
return "forward:/sample/egovSampleList.do";
}
==============================
==SampleList.jsp 내용==
<script type="text/javaScript" language="javascript" defer="defer">
/* 글 수정 화면 function */
function fn_egov_select(id) {
...
}
/* 글 등록 화면 function */
function fn_egov_addView() {
...}
/* 글 목록 화면 function */
function fn_egov_selectList() {
...}
/* pagination 페이지 링크 function */
function fn_egov_link_page(pageNo){
...}
/* 글 등록 function */
function fn_egov_save() {
2014-01-06
frm = document.listForm;
frm.action = "<c:url value='/sample/updateSample.do'/>";
frm.submit();
}
</script>
</head>
<body>
<form:form commandName="searchVO" name="listForm">
<!-- <input type="hidden" name="selectedId" />
<input type="hidden" name="selectedFullname" /> -->
<div class="wrapper">
<div id="header">
사원관리
<div id="ibox" class="left">
<a href="javascript:fn_egov_selectList();">조회</a>
<%-- <a href='<c:url value="/sample/egovSampleList.do"/>'>조회</a> --%>
<a href="javascript:fn_egov_addView();">입력</a>
<a href="javascript:fn_egov_delete();">삭제</a>
<a href="javascript:fn_egov_save()">저장</a>
</div>
</div>
<!-- 바디 -->
<div id="body">
...
<c:forEach var="result" items="${resultList}" varStatus="status">
<form:form commandName="sampleVO" name="detailForm">
...
</form:form>
</c:forEach>
...
</form:form>
</body>
</html>
==================================
현재 리스트 조회페이지에서 리스트 중 일부 row를 수정 후 updateSample.do로 submit를 하면 처음 row만 업데이트가 되는 상태입니다.
A
안녕하세요 프레임워크센터입니다.
리스트 화면에서 일괄 수정을 위한 샘플을 참고해 보시기 바랍니다.
공통컴포넌트 중 프로그램관리 라는 컴포넌트가 있습니다.
이 컴포넌트를 설치 후 확인해 보시면 리스트 화면에서 체크박스의 선택여부를 통해
일괄로 수정할 수 있습니다.
참고하시기 바랍니다.
수고하세요.
리스트 화면에서 일괄 수정을 위한 샘플을 참고해 보시기 바랍니다.
공통컴포넌트 중 프로그램관리 라는 컴포넌트가 있습니다.
이 컴포넌트를 설치 후 확인해 보시면 리스트 화면에서 체크박스의 선택여부를 통해
일괄로 수정할 수 있습니다.
참고하시기 바랍니다.
수고하세요.