개발 Q&A

제목 폼 검증에 파일내용 돌려받기
글쓴이 밥아저씨 작성시각 2013/01/22 16:31:43
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 16119   RSS
폼 내용과 파일을 업로드하는데
검증이 실패했을경우 텍스트 내용은 form_error로 복구할 수 있는데
파일 내용은 reset 되는 바람에 다시 업로드 해야하는 불편함이 있는데요
이것을 해결할 수 있는 방법이 있나요?

해결방법이 ajax라면, ajaxForm 플러그인을 사용해서
새로고침 없이 만들어보려 했습니다.
하지만 계속 전송이 안됩니다.
요것도 염치 불구하고 여쭈어 봅니다.

전송 버튼 type을 submit으로 하면 그냥 쌩 페이지가 전송되어버리고
button으로 하면 아무런 반응도 없습니다.
스크립트 오류는 따로 나타나지 않았습니다.
$(document).ready(function() {
 $("#send").click(function() {
  if ($("#title").val() == "") {
   alert("도서제목을 입력해주세요.");
   $("#title").focus();
  } else if ($("#author").val() == "") {
   alert("저자명을 입력해주세요.");
   $("#author").focus();
  } else if ($("#publisher").val() == "") {
   alert("출판사를 입력해주세요.");
   $("#publisher").focus();
  } else if ($("#year").val() == "") {
   alert("년도를 입력해주세요.");
   $("#publisher").focus();
  } else if ($("#price").val() == "") {
   alert("가격을 입력해주세요.");
   $("#price").focus();
  } else {

                        <!-- 요 부분 입니다. -->
   $("#registerForm").ajaxForm({
    success: function(data) {
     alert(data);
    }
   });
  }
  return false;
 });
});
 
 다음글 컨트롤러에서 array 더하기 (3)
 이전글 URL링크 질문. (2)

댓글

한대승(불의회상) / 2013/01/22 16:52:20 / 추천 0
파일내용을 돌려 받을 수는 없지만 서버에 파일을 저장하고 파일명과 저장여부를 돌려 줄수 있을것 같습니다.

쌩페이지가 전송된다는 말씀은 일반적인 post방식으로 올라간다는 말씀이신가요?

그렇다면 플러그인을 잘못 사용하신것 같습니다.
이제다시 / 2013/01/22 17:05:50 / 추천 0
<input type="button" id="send" value="전송">
타입을 submit 으로 하면 검증 안걸치고 바로 폼 전송이 되겠죠.

버튼을 눌렀을때 반응이 없는것을 보니
버튼의 ID값이 send 가 맞는지 확인하세요.


밥아저씨 / 2013/01/22 17:28:51 / 추천 0
 불의회상, 이제다시// 님 감사합니다.
이상하게 다시 하니깐 잘 됩니다. -.-
해당 ajaxForm의 마지막 구문에
return true; 를 추가하니 잘 됩니다.

그 전에는
true를 반환하면 말씀드린대로 일반 post가 전송되는걸로 알고 있어 그렇게 하지 않았었는데
-.- 요상하게 잘 되는군요....
한대승(불의회상) / 2013/01/22 18:08:04 / 추천 0
//밥아저씨

잘 해결되셨다니 참 기쁘네요.
즐거운 하루 되세요. ^^