전체/JS & Jquery
버튼 클릭하여 json 형태 데이터 ajax 보내는 스크립트
effortDev
2018. 10. 31. 15:22
1. ajax 요청 공통 메소드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | var myCommon = {}; myCommon.util = { // method : get/post , url : call url // params : json 형식 요청 데이터, callbackFunction : callback 함수명 callAjax : function(method, url, type,params, callbackFunction ){ if(method=="" || url==""){ console.log("method or url empty"); return false; } $.ajax({ type : method , url : url , data : JSON.stringify(params) , contentType:'application/json; charset=utf-8' , dataType: type , success : function(response) { if (type == "html") { $(document.getElementById(callbackFunction)).html(response); } else { // Callback 함수 호출 if (typeof(callbackFunction) == "function") callbackFunction(params, response); } } , error : function(jqXHR, error) { console.log(error); } }); } }; | cs |
2. 버튼 클릭하여 json 형태 데이터를 ajax 공통 메소드에 태워 보내기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | $(document).ready(function() { var processScript = true; var sendData = {}; $("#ptcp").click(function(){ // 버튼 여러번 클릭되지 않게 막기 if(!processScript){ alert("처리중입니다."); return; } var userName = $("#userName").val(); var phoneNumber = $("#phoneNumber").val(); var birthDt = $("#birthDt").val(); var age = $("#age").val(); sendData.userName = userName; sendData.phoneNumber = phoneNumber; sendData.birthDt = birthDt; sendData.age = age; if(!confirm("응모하시겠습니까?")){ return; } ptcpEvent(sendData); }); function ptcpEvent(sendData){ var url = "@RequestMapping될 url 명시"; var type = "json"; var requestData = sendData; console.log(JSON.stringify(requestData)); processScript = false; myCommon.util.callAjax("POST", url, null,requestData, returnData.myResult); }; var returnData = { myResult : function(request, response){ console.log(request); console.log(response); } } }); | cs |