form 바인딩 후 reset되지 않는 현상관련 질문입니다.
- 작성자 :
- 이*표
- 작성일 :
- 2009-09-30 09:48:51
- 조회수 :
- 4,218
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
수고많으십니다. 몇가지 질문이 있어서 글 올립니다.
상단에 링크가 있고 하단에 입력폼이 있다고 할 때, 상단의 링크를 클릭하면 지정된 controller를 타고 해당 정보를 취득하여 지정된 클래스의 인스턴스에 값을 바인딩함으로서 입력폼의 각 폼컨트롤에 정보가 표시됩니다.
jsp화면에서의 form태그부분
form:form commandName="viewVO"......
(태그로 썻더니 화면에 표시가 되질 않는군요...)
controller에서의 해당 처리부분
public String execSelect(@ModelAttribute("viewVO") ViewVO viewVO........
.....
.....
viewVO.setXXX("aaaa");
viewVO.setYYY("bbbb");
.....
.....
그런 후 입력폼에 있는 초기화 버튼을 클릭을 했을 때, document.폼이름.reset()을 호출합니다만, 폼이 리셋이 되지 않습니다.
하지만 초기상태의 입력폼에서 각 항목을 직접타이핑하여 기입한 후 리셋처리를 하면 정상적으로 리셋처리가 됩니다.
이는 javascript를 이용한 리셋에 대한 현상입니다만, Controller에서 리셋처리를 했을 때도 마찬가지입니다.
controller에서의 리셋처리
public String execSelect(@ModelAttribute("viewVO") ViewVO viewVO........
.....
.....
viewVO.setXXX("");
viewVO.setYYY("");
.....
.....
return 페이지경로;
이렇게 form bean으로 리셋을 처리하는 것이 불가능한 것인지요?
리셋을 하기 위해서는 어떻게 해야 하는 것인지 도움주시면 감사하겠습니다.
그럼 수고 하세요
상단에 링크가 있고 하단에 입력폼이 있다고 할 때, 상단의 링크를 클릭하면 지정된 controller를 타고 해당 정보를 취득하여 지정된 클래스의 인스턴스에 값을 바인딩함으로서 입력폼의 각 폼컨트롤에 정보가 표시됩니다.
jsp화면에서의 form태그부분
form:form commandName="viewVO"......
(태그로 썻더니 화면에 표시가 되질 않는군요...)
controller에서의 해당 처리부분
public String execSelect(@ModelAttribute("viewVO") ViewVO viewVO........
.....
.....
viewVO.setXXX("aaaa");
viewVO.setYYY("bbbb");
.....
.....
그런 후 입력폼에 있는 초기화 버튼을 클릭을 했을 때, document.폼이름.reset()을 호출합니다만, 폼이 리셋이 되지 않습니다.
하지만 초기상태의 입력폼에서 각 항목을 직접타이핑하여 기입한 후 리셋처리를 하면 정상적으로 리셋처리가 됩니다.
이는 javascript를 이용한 리셋에 대한 현상입니다만, Controller에서 리셋처리를 했을 때도 마찬가지입니다.
controller에서의 리셋처리
public String execSelect(@ModelAttribute("viewVO") ViewVO viewVO........
.....
.....
viewVO.setXXX("");
viewVO.setYYY("");
.....
.....
return 페이지경로;
이렇게 form bean으로 리셋을 처리하는 것이 불가능한 것인지요?
리셋을 하기 위해서는 어떻게 해야 하는 것인지 도움주시면 감사하겠습니다.
그럼 수고 하세요
A
안녕하세요.. 이주표님..
우선.. form의 reset은 값을 없애는 의미가 아니라..
원래 페이지가 가지고 있던 값으로 되돌리는 역할입니다.
즉.. <input type="text" name="name" value="abc">
라고 되어 있으면..
reset()을 하면.. abc값으로 되는 역할입니다...
그리고 두번째 질문은 리셋의 의미가 아니라 모델 데이터를 변경하셨다는 의미인데..
그렇게 될 경우.. form tag의 form:input 등에 path로 잡혀 있는 값들은.. 변경된 값으로 지정됩니다..
그럼.. 남은 하루도 즐거운 하루 되십시오..
감사합니다..
우선.. form의 reset은 값을 없애는 의미가 아니라..
원래 페이지가 가지고 있던 값으로 되돌리는 역할입니다.
즉.. <input type="text" name="name" value="abc">
라고 되어 있으면..
reset()을 하면.. abc값으로 되는 역할입니다...
그리고 두번째 질문은 리셋의 의미가 아니라 모델 데이터를 변경하셨다는 의미인데..
그렇게 될 경우.. form tag의 form:input 등에 path로 잡혀 있는 값들은.. 변경된 값으로 지정됩니다..
그럼.. 남은 하루도 즐거운 하루 되십시오..
감사합니다..