XETOWN

질문/답변

웹에 관련된 질문과 답변을 나눌 수 있습니다.

안녕하세요. 제가 모바일 페이지 글쓰기 에게 [뒤로가기를 실수로 눌렀을 때 경고를 나타내는 시스템]이 필요하여

예전에 Ikoo 님이 알려주신 방법으로 [ 모바일 페이지에서 글쓰기를 벗어날 시 경고문 출력 ] 까지는 성공 하였는데,

문제는 이 [ 경고문 ] 이 정상적인 " 등록 " 버튼을 누른 때에도 출력된다는 것 입니다. 게시판 스킨은 sketchbook5 을 사용하고 있습니다. 

 

* 사용한 경고문 출력 방법

/xe/modules/board/skins/sketchbook5/js/editor_m.js 에서

 

// 글쓰기에서 벗어날 시 경고창 출력
jQuery(window).on('beforeunload', function() {
    return '저장되지않은 작성 중인 내용이 있습니다. 글쓰기 페이지에서 나가시겠습니까?';
});
//

 

맨 윗 부분에 위 소스를 붙여 넣기 [ // ajaxFileUpload 위에 ] 했습니다.

관련 주소 : https://www.xpressengine.com/tip/23085379

 

위의 경고문을 "등록" 버튼을 눌렀을 떄 표시하지 않으려면 어떻게 해야할까요..?

고수분들의 도움을 요청합니다. 도와주신다면 감사하겠습니다. 좋은 하루되세요.

 

아래는 스케치북 스킨의 editor_m.js 입니다.

 

 

// ajaxFileUpload
function ajaxFileUpload(){
jQuery("#loading").ajaxStart(function(){
jQuery(this).show();
})
.ajaxComplete(function(){
jQuery(this).hide();
IsUploadFiles();
});

jQuery.ajaxFileUpload({
url:'index.php?&act=procFileIframeUpload',
secureuri:false,
fileElementId:'Filedata',
dataType:'html',
data:{
mid:current_mid,
editor_sequence: '1',
uploadTargetSrl: jQuery('#ff input[name=document_srl]').val(),
manual_insert: 'true'
},
success:function(frameId, data, status){
var frm = document.getElementById('ff');
var io = document.getElementById(frameId);
if(io.contentWindow){
var sourceFile = document.getElementById(frameId).contentWindow.uploaded_fileinfo.source_filename;
var uploadFile = document.getElementById(frameId).contentWindow.uploaded_fileinfo.uploaded_filename;
var document_srl = document.getElementById(frameId).contentWindow.uploaded_fileinfo.upload_target_srl;
var file_srl = document.getElementById(frameId).contentWindow.uploaded_fileinfo.file_srl;
var sid = document.getElementById(frameId).contentWindow.uploaded_fileinfo.sid;
} else if(io.contentDocument){
var sourceFile = document.getElementById(frameId).contentDocument.uploaded_fileinfo.source_filename;
var uploadFile = document.getElementById(frameId).contentDocument.uploaded_fileinfo.uploaded_filename;
var document_srl = document.getElementById(frameId).contentDocument.uploaded_fileinfo.upload_target_srl;
var file_srl = document.getElementById(frameId).contentDocument.uploaded_fileinfo.file_srl;
var sid = document.getElementById(frameId).contentDocument.uploaded_fileinfo.sid;
}
frm.document_srl.value = document_srl;

// Source from xeed
ext = (match = uploadFile.match(/\.([a-z0-9]+)$/i))?match[1]||'':'';
ext = ext.toLowerCase();
if(allowedFileTypes!='*.*' && jQuery.inArray('*.'+ext, allowedFileTypes.split(';')) < 0){
alert('File is not an allowed file type.');
return false;
};
if(jQuery.inArray(ext, 'gif jpg jpeg png'.split(' ')) > -1) type = 'img';
else if(jQuery.inArray(ext, 'mp3 wma wav ogg aac flac'.split(' ')) > -1) type = 'music';
else if(jQuery.inArray(ext, 'avi mov mp4 mkv ogv webm'.split(' ')) > -1) type = 'media';
else type = 'etc';

if(uploadFile!=""){
if(type=='img'){
var insertTag = '<li id="file_'+file_srl+'" class="success"><button type="button" style="background-image:url('+uploadFile+')" data-file="'+uploadFile+'" data-type="'+type+'" onclick="jQuery(this).parent().toggleClass(\'select\')" title="'+sourceFile+'"><b class="fa fa-check">✔</b></button><a class="delete_file" href="#" onclick="delete_file('+file_srl+');return false;"><b class="fa fa-times"></b></a><a class="insert_file" href="#" onclick="insert_file('+file_srl+');return false"><i class="fa fa-arrow-up"></i></a></li>';
} else {
var insertTag = '<li id="file_'+file_srl+'" class="success type2 '+type+'"><small>'+sourceFile+'</small><button type="button" data-file="'+uploadFile+'" data-type="'+type+'" data-dnld="?module=file&act=procFileDownload&file_srl='+file_srl+'&sid='+sid+'" onclick="jQuery(this).parent().toggleClass(\'select\')"><b class="fa fa-check">✔</b></button><a class="delete_file" href="#" onclick="delete_file('+file_srl+');return false"><b class="fa fa-times"></b></a><a class="insert_file" href="#" onclick="insert_file('+file_srl+');return false"><i class="fa fa-arrow-up"></i></a></li>';
};
jQuery('#loading').before(insertTag);
} else {
jQuery('#loading').before('<li class="error">Error</li>');
}
if(typeof(data.error)!='undefined'){
if(data.error!=''){
alert(data.error);
} else {
alert(data.msg);
};
};
},
error: function (data, status, e){
alert(e);
}
});
}

function delete_file(file_srl,if_msg){
if(!if_msg) var msg = window.confirm(lang_confirm_delete);
if(msg || if_msg){
var settings = file_srl;
var params = new Array();
params["editor_sequence"] = 1;
params["file_srls"]  = file_srl;
var response_tags = new Array("error","message");
exec_xml("file","procFileDelete", params, function(){
jQuery("#file_"+settings).remove();
IsUploadFiles();
});
} else {
return false;
};
}

function IsUploadFiles(){
if(jQuery('#files .success').length){
jQuery('#mUpload .info').addClass('is_img');
} else {
jQuery('#mUpload .info').removeClass('is_img');
jQuery('#mEditorSelect').removeClass('on');
}
}

jQuery(function($){
$('#FiledataWrp').on('change','#Filedata',function(){
ajaxFileUpload();
});
});

 

Atachment
첨부 1

List of Articles
번호 제목 글쓴이 날짜
3699 요거 이해가 잘 안가네요 ...? 2 구미호 2017.01.11
3698 파일 첨부를 하나씩 개별적으로 할수 있을까요? 3 똑띠 2017.01.11
3697 XE 회원가입관련 개발 문의드립니다!! 2 유니코드 2017.01.11
3696 소시사랑 한줄메모 글자수 늘리는 방법 5 보고하비 2017.01.11
3695 웹호스팅 문의드립니다(선택과 성능) 11 티카아 2017.01.11
3694 let's encrypt 인증서 갱신 관련 문의드립니다. 고라자 2017.01.11
3693 질문여쭤봅니다 ~! 7 희스깅 2017.01.11
3692 휴지통 애드온과 관련되어 질문드립니다 2 file 홍홍홍 2017.01.10
3691 제 홈페이지 속도가 많이답답한가요? 25 희스깅 2017.01.10
3690 에디터 컴포넌트인 이미지 갤러리도 클플 캐시만 적용시키고싶은데.. 라그릿 2017.01.10
3689 포인트와 열람제한 설정에 대해 문의드립니다. 준쓰 2017.01.10
3688 본문 이미지 클릭시 XE TOWN 에서 처럼 나오게 하려면 어떻게 해야하나요? 7 file 현님v 2017.01.10
3687 메뉴에 새글 표시 모듈 에러 증상.. 현님v 2017.01.10
3686 라이믹스 버그? Nginx 문제? 6 file 루딩 2017.01.10
3685 최신글 모음 만들수 있을까요 ...? 3 구미호 2017.01.10
3684 라이믹스에서 캐시 재생성 누르면 슈퍼캐시도 같이 재생성되나요? 2 기븐 2017.01.10
3683 크롬/크로미움 모바일 56버전부터 사이트가 영문버전으로 보이네요 기븐 2017.01.10
3682 라이믹스 캐시 재생성 시 admin.procAdminRecompileCacheFile 에러 발생 질문드립니다 2 기븐 2017.01.10
» 모바일 글 작성시 경고문 출력. 1 file 가시밭 2017.01.10
3680 분류관리 생성안되는건 서버세팅과 관련이 있나요 ? 5 나만의너 2017.01.10
Board Pagination Prev 1 ... 35 36 37 38 39 40 41 42 43 44 ... 224 Next
/ 224
위로
서버에 요청 중입니다. 잠시만 기다려 주십시오...