From 1a0022e1aa78a2588a4307a9c49fc5801ebce8fc Mon Sep 17 00:00:00 2001 From: "hehihoho3@gmail.com" Date: Thu, 5 Dec 2024 17:35:07 +0900 Subject: [PATCH] =?UTF-8?q?=ED=94=84=EB=A1=9C=EA=B7=B8=EB=A0=88=EC=8A=A4?= =?UTF-8?q?=EB=B0=94=2030=EB=A7=8C=EA=B1=B4=EA=B8=B0=EC=A4=80=20600?= =?UTF-8?q?=EC=B4=88=EB=A1=9C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jsp/web/msgdata/MsgDataSMLView.jsp | 48 ++++++++++--------- 1 file changed, 25 insertions(+), 23 deletions(-) diff --git a/src/main/webapp/WEB-INF/jsp/web/msgdata/MsgDataSMLView.jsp b/src/main/webapp/WEB-INF/jsp/web/msgdata/MsgDataSMLView.jsp index 2880d848..4dc4b7ea 100644 --- a/src/main/webapp/WEB-INF/jsp/web/msgdata/MsgDataSMLView.jsp +++ b/src/main/webapp/WEB-INF/jsp/web/msgdata/MsgDataSMLView.jsp @@ -2063,6 +2063,7 @@ function advMsgInsert(){ //문자 바이트수 계산하기 함수 function fnByteString(contents){ + console.log(' : fnByteString : '); var totalByte = 0; //var content = contents; var adverYn = $("input[name='send_adYn']:checked").val(); @@ -2070,7 +2071,6 @@ function fnByteString(contents){ var denyTxtLeng = 0; var adverTxt = $('.ad_txt').html(); var denyTxt = $('.deny_txt').html(); - totRows = tableL.getRows().length; //광고문자 상단 문구 줄바꿈 처리하기(문자길이 바이트수 계산을 위해서) @@ -2096,22 +2096,15 @@ function fnByteString(contents){ var conLeng = conByteLeng(contents); // 내용 문자 입력 바이트 수 계산하기 //일반문자, 광고문자에 따른 문자 길이 변경해주기 - if(adverYn == "N"){ - - $('#msgLeng').text(conLeng); - - //문자 길이 변수에 저장해주기 - $('#smsLen').val(conLeng); - - }else{ - + if(adverYn != "N"){ conLeng = adTxtLeng + conLeng + denyTxtLeng; // 상단 광고 텍스트 , 하단 080 문자내용 길이 더해주기 - $('#msgLeng').text(conLeng); - - //문자 길이 변수에 저장해주기 - $('#smsLen').val(conLeng); - } + + $('#msgLeng').text(conLeng); + //문자 길이 변수에 저장해주기 + $('#smsLen').val(conLeng); + + var photoSts = $('.delLi').length; if(photoSts > 0){ @@ -2189,17 +2182,26 @@ function fnByteString(contents){ $('.realtime').text(contents); // 2000byte 초과시 메세지 알림 +// console.log('conLeng : ', conLeng); if(conLeng > 2000){ - //2000바이트 초과시 문자열 잘라서 보여주기 - var subUnderStr = strUnderLineSubstring(contents, 2000); + var fullContents = adverYn != "N" ? adverTxt + denyTxt + contents : contents; + var subUnderStr = strUnderLineSubstring(fullContents, 2000).replace(adverTxt, "").replace(denyTxt, ""); + + +// var subUnderStr = strUnderLineSubstring(adverTxt+denyTxt+contents, 2000); + subUnderStr = subUnderStr.replace(adverTxt,"").replace(denyTxt, ""); + console.log('subUnderStr : ', subUnderStr) + + $('#smsTxtArea').val(subUnderStr); - - //문자 바이트수 수정해주기 - $('#msgLeng').text(conByteLeng(subUnderStr)); - - //문자 길이 변수에 저장해주기 - $('#smsLen').val(conByteLeng(subUnderStr)); + + var contentLeng = conByteLeng(subUnderStr); + var totalLeng = adverYn != "N" ? contentLeng + adTxtLeng + denyTxtLeng : contentLeng; + + console.log('contentLeng : ', totalLeng); + $('#msgLeng').text(totalLeng + " / "); + $('#smsLen').val(contentLeng); alert("문자 내용은 2000byte를 넘을 수 없습니다."); return false;