텍스트 폼에서 글자수 제한하기 및 글자수 첵크하기

텍스트 폼에서 글자수 제한하기 및 글자수 첵크하기 updated_at: 2023-03-28 07:07

텍스트 폼에서 글자수 제한하기 및 글자수 첵크하기

html

<form name="form">
<textarea name="text" onKeyUp="javascript:cal_pre(document.form.text.value);"> </textarea> 
 <br>
 <input type="text" name="cbyte" value="0" size="3">
/영문50자(한글25자)
</form>

js

function cal_pre(mnum) {
  var tmpStr, tcount;
  tmpStr = new String(mnum);
  cal_byte(mnum);
}

function cutText(str) {
  var tmpStr = str;
  var szComplete = "";
  var tcount = 0;
  var onechar;

  for (k=0;k <tmpStr.length;k++) {
    onechar = tmpStr.charAt(k);
    if (escape(onechar).length > 4) {
      tcount += 2;
    } else if (onechar!='\r') {
    tcount++;
    }

    if (tcount > 50) {
      tmpStr = szComplete;

      document.form.text.value = tmpStr;
      document.form.cbyte.value = 50;
      break;
    } else {
      szComplete = szComplete + onechar;
    }
  }
}
function cal_byte(aquery)
{
  var tmpStr;
  var temp=0;
  var onechar;
  var tcount;
  tcount = 0;

  tmpStr = new String(aquery);
  temp = tmpStr.length;

  for (k=0;k <temp;k++) {
    onechar = tmpStr.charAt(k);

    if (escape(onechar).length > 4) {
     tcount += 2;
    } else if (onechar!='\r') {
      tcount++;
    }
  }

  document.form.cbyte.value = tcount;

  if(tcount>50) {
    reserve = tcount-50;
    alert("메시지 내용은 50바이트 이상은 전송하실수 없습니다.\r\n 쓰신 메세지는 "+reserve+"바이트가 초과되었습니다.\r\n초과된 부분은 자동으로 삭제됩니다.");
    cutText(tmpStr);
    return;
  }
}

CodePen

See the Pen 자바스크립트 글자수 제한 by younghyeong ryu (@wangta69) on CodePen.

평점을 남겨주세요
평점 : 5.0
총 투표수 : 1

질문 및 답글