/* 신버전 powered by hohyun. 09.07.01. modifed by hohyun. 10.08.30. modifed by hohyun. */ //My Ajax 파람 기본값. $.ajaxSetup과는 다르니 유의. $.MyAjaxDefaults = { url:"", type:"GET", dataType:"html", data:"", callback: function(data){}, bShowLoadingImg: true, //false 주면 로딩이미지 표시안함. default는 true loading_txt:"Please Wait..", loading_img: "/tccins/jquery/images/loading_bead2_blue_32.gif", //loading_bead2_blue_32.gif', loading_bead2_green_32_bg404040.gif, ani_loading.gif, loading_solid_round.gif, loading_with_text.gif loading_top: null, //로딩이미지 위치 loading_left: null } function myajaxlocal(options) { var current = jQuery.extend({},$.MyAjaxDefaults, options); //options 확장하기...^^ //alert(current.url); var bcw = document.body.clientWidth; var bch = document.body.clientHeight; var centerX = bcw/2 - 50; var centerY = bch/2; //alert(centerX + "/" + centerY); if (current.loading_top == null) current.loading_top = centerY; if (current.loading_left == null) current.loading_left = centerX; $.ajax({ url: current.url, async: true, type: current.type, dataType: current.dataType, data: current.data, beforeSend: function(){ if(current.bShowLoadingImg) { var jqoWrapper = $('
').css({ //color: '#C1C1C1', //backgroundColor: '#404040', //border: '0px dotted #004080', //color: '#184078', //'background-color': '#FFFFFF', //#424142 //border: '1px dotted #184078', padding: (current.loading_txt=='')?'20px':'15px' + ' 0px 0px 0px', fontSize: '8pt', //fontFamily: 'verdana', fontFamily: 'Tahoma', textAlign: 'center', opacity: 20, width: '90px', height: '60px', lineHeight: '2.0em', top: current.loading_top, left: current.loading_left, position: 'absolute', zIndex: 3000, '-webkit-border-radius': '10px' //모바일전용(아이폰 사파리 브라우저) 모서리 둥글게처리 }); var jqoLoadText = $('
' + current.loading_txt + '
'); var jqoLoadImg = $('
') $(jqoWrapper).append(jqoLoadImg).append(jqoLoadText) $("body").append(jqoWrapper) } }, success: function(data){ $('.loadingImg').remove(); current.callback(data); }, complete: function(xhr, textStatus) { }, error: function(xhr, textStatus, errorThrown){ $('.loadingImg').remove(); alert("myajaxlocal " + textStatus + "!!!, " + xhr.statusText + "(" + xhr.status + ")"); } }); } //jquery.form.js import 필수 function myajaxsubmit(myOptions) { if(myOptions.targetFormId == null) return false; if(myOptions.targetFormId == '') return false; var defaultOptions = { //url: '', //생략하면 form의 action 값 //type: '', //생략하면 form의 METHOD 값 dataType: 'html', //text,html,xml, json, script //target: '#debugResponse', //response를 뿌릴 타겟, 생략하면 안뿌림 clearForm: false, //true : 폼을 지움 resetForm: false, //true : 폼을 재설정 semantic: false, //true : 폼 매개변수가 선언된 순서대로 쿼리문자열을 만든다. 부하증가되니 꼭 필요한 경우만 사용 //------ my custom param : s------- loading_txt:"Please Wait...", loading_img: "/tccins/jquery/images/loading_bead2_blue_32.gif", //loading_bead2_blue_32.gif', loading_bead2_green_32_bg404040.gif, ani_loading.gif, loading_solid_round.gif, loading_with_text.gif loading_top: null, //로딩이미지 위치 loading_left: null, callback: function(data){}, //------ my custom param : e------- beforeSubmit: function(data,set,options) { $('
 
') .css({ color: '#004080', fontSize: '9pt', textAlign: 'center', opacity: 10, width: '200px', height: '200px', top: options.loading_top, left: options.loading_left, position: 'absolute', //text-align: 'center', zIndex: 3000 }) .appendTo('body').show(); //debug 할때 주석풀고 사용 /* $("
").appendTo("body").show(); //data : form data 미리보기 $("
").css({padding:"10px",width:"100%",border:"1px solid #000000"}).appendTo("#debug") $("#debugFormData").html($.toSource(data)); //currentOptions(최종옵션) 미리보기 $("
").css({padding:"10px",width:"100%",border:"1px solid #000000"}).appendTo("#debug") $("#debugOptions").html($.toSource($.extend({},options), true)); */ }, success: function(data,txtStatus,set) { //set은 ajaxSubmit를 호출한 확장집합 } } var currentOptions = jQuery.extend({},defaultOptions, myOptions); //options 확장하기...^^ //callback을 success로 옮겨줌 currentOptions.success = function(data,txtStatus,set) { $('.loadingImg').remove(); currentOptions.callback(data); } //loading top, left 할당 //alert(current.url); var bcw = document.body.clientWidth; var bch = document.body.clientHeight; var centerX = bcw/2 - 100; var centerY = bch/2; //alert(centerX + "/" + centerY); if (currentOptions.loading_top == null) currentOptions.loading_top = centerY; if (currentOptions.loading_left == null) currentOptions.loading_left = centerX; $(currentOptions.targetFormId).ajaxSubmit(currentOptions); } /* ajax queue 사용 시 호출 2010.11.11 by Choo */ function fShowLoadingImage(){ var current = jQuery.extend({},$.MyAjaxDefaults); //options 확장하기...^^ var bcw = document.body.clientWidth; var bch = document.body.clientHeight; var centerX = bcw/2 - 50; var centerY = bch/2; if (current.loading_top == null) current.loading_top = centerY; if (current.loading_left == null) current.loading_left = centerX; $('
' + current.loading_txt + '
') .css({ color: '#004080', 'background-color': '#FFFFFF', border: '2px solid #004080', padding: '15px 0px 0px 0px', fontSize: '9pt', textAlign: 'center', opacity: 10, width: '90px', height: '60px', lineHeight: '2.0em', top: current.loading_top, left: current.loading_left, position: 'absolute', //text-align: 'center', zIndex: 3000, '-webkit-border-radius': '10px' //모바일전용(아이폰 사파리 브라우저) 모서리 둥글게처리 }) .appendTo('body').show(); } /* ajax queue 사용 시 마지막 콜백함수에서 호출 2010.11.11 by Choo */ function fHideLoadingImage(){ $('.loadingImg').remove(); }