jQuery
플로그인 중 form
태그 내부의 데이터를 편하게 비동기 처리해주는 기능이 있습니다.
바로 jQuery
의 ajaxSubmit();
인데요.
submit
이지만 비동기로 처리할 수 있고 동작 이전의 함수처리, 이후의 함수처리도 정의할 수 있는 장점이 있습니다.
사용법은 아래와 같습니다.
사용방식
var options = {
target: '#output2',
beforeSubmit: showRequest,
success: showResponse
};
$(formTag).ajaxSubmit(options);
formTag에 ajaxForm() 메소드를 연결하여 사용합니다.
저런 옵션들이 있구나 정도로 보시면 될 것 같고, 좀 더 자세한 사용법을 보겠습니다.
ajax동작 처리에 따른 결과값 받는 예제(주의점)
form.html
<form id="myForm" action="insertBoard.do" method="post">
title: <input type="text" name="title" />
Content: <textarea name="Content"></textarea>
<input type="submit" value="Save" />
</form>
form.js
<script>
var option = {
dataType : 'json',
url: "insertBoard.do",
success: function(res){
alert(res.msg);
},
error: function(res){
alert("에러가 발생했습니다.")
}
}
$('#myForm').submit(function() {
$(this).ajaxSubmit(option);
return false;
});
</script>
여기서 주의하실점은 submit
기능 동작 정의 후 마지막에 있는 return false;
입니다.
이부분을 처리하지 않으면 아무리 success
, error
옵션을 처리하여도 페이지가 submit
이 먹히기 때문에 페이지 리로드 현상이 발생하고 결과값에 따른 동작(alert() 메시지 출력)을 정상적으로 처리 할 수 없습니다.