으메
이거 짜느라 머리 아펐으..
근데 좀더 수정이 필요할듯 싶네용.. 으하하하
제가 좀더 해보구 의견 있으신 분들은 말씀 남겨 주셔도 됩니다.
==================================================================================================
<script>
<!--
var OrgText = '';
var CharLength = 0;
var OrgCharLength = 0;
var OrgTextLength = 0;
// 텍스트 박스 글자수 제한
function CheckCmtContents(TempValue)
{
var NowLength = TempValue.length; // 현재 가져온 입력된 길이
var OneCharacter = ""; // 한글자씩 넣어둘 임시 변수
// 저장된 길이와 같은지 비교
if (NowLength > OrgTextLength){
// 저장된 길이 보다 많을 경우 초과된 부분만 비교
for(i=OrgTextLength ; i< NowLength ; i++)
{
// 한글자추출
OneCharacter = TempValue.charAt(i);
// 한글이면 2를 더한다.
if (escape(OneCharacter).length > 4){
CharLength += 2;
}
// 그밗의 경우는 1을 더한다.
else{
CharLength++;
}
// 전체길이를 초과하면
if(CharLength > 400)
{
alert( "400 바이트를 초과 입력할수 없습니다. \n 초과된 내용은 자동으로 삭제 됩니다. ");
document.form2.CONTENT.value = OrgText;
document.getElementById("CmtLength").innerText = OrgCharLength;
return;
}
else{
OrgText += OneCharacter;
OrgTextLength = TempValue.length;
OrgCharLength = CharLength;
}
}
}
else if (NowLength < OrgTextLength){
OrgText = "";
CharLength = 0;
// 저장된 길이보다 작은 경우 처음부터 검색
for(i=0 ; i< NowLength ; i++)
{
// 한글자추출
OneCharacter = TempValue.charAt(i);
// 한글이면 2를 더한다.
if (escape(OneCharacter).length > 4){
CharLength += 2;
}
// 그밗의 경우는 1을 더한다.
else{
CharLength++;
}
OrgText += OneCharacter;
}
OrgTextLength = TempValue.length;
}
else{
// 저장된 길이와 같은 경우 무시
return;
}
document.getElementById("CmtLength").innerText = CharLength;
return;
}
//-->
</script>
<textarea name="CONTENT" style="width:645;height:38;" onfocus="clearText(this)" onkeyup="CheckCmtContents(this.value)">개인정보 유출, 저작권/인격침해, 허위사실 유포 등 타인의 권리를 침해하는 내용은 임의 삭제되거나 관련법에 따라처벌될 수 있습니다.</textarea>
<span id="CmtLength">0</span>/400바이트 (한글 200자)