게시판글쓰기 글자수 제한 및 경고창 문의드립니다.
본문
게시판글쓰기 화면 write.skin.php 에서
<div class="write_div">
<label for="wr_1" class="sound_only">등록번호<strong>필수</strong></label>
<input type="text" name="wr_1" value="<?php echo $wr_1 ?>" id="wr_1" required class="frm_input half_input required" size="17" maxlength="17" placeholder="등록번호 17자리를 입력해주세요.">
</div>
17자리를 입력하지 않으면, 경고창이 뜨게 하고 싶습니다. (17자리를 입력해야 다음 항목으로 넘어가도록)
기존에 질문들을 다 뒤져보고 적용해 보아도 잘 되지 않아서 이렇게 글을 올립니다.ㅠㅠ
고수님들~부탁드립니다~
답변 3
minlength="17"
<input type="text" name="wr_1" id="wr_1" value="<?php echo $wr_1 ?>" id="wr_1" required class="frm_input half_input required" size="17" maxlength="18" placeholder="등록번호 17자리를 입력해주세요." onkeyup="byte_check('wr_1');">
<script language="JavaScript">
function byte_check(wr_1)
{
var pos, pch, ch;
var cnt = 0;
var text = document.getElementById('wr_1');
var len = text.value.length;
for (i=0;i<len;i++){
pos = text.value.charAt(i);
// 자리수 계산.
ch = escape(pos);
if (pch == '%0D' && ch == '%0A') { } // 2byte enter (\n\r)
else if (ch.length > 4) cnt += 2;
else cnt++;
pch = ch;
}
if (cnt > 17) {
alert(' 글자수는 17자까지 가능합니다.');
//document.getElementById('wr_2').focus();
}
}
</script>
<script language=javascript>
function displayBytes( sz, id )
{
var form = document.form;
var obj = document.getElementById( id );
if (obj.value.bytes() < sz)
{ //80바이트를 넘기면
if (event.keyCode != '8') //백스페이스는 지우기작업시 바이트 체크하지 않기 위해서
{
alert('질문1 17글자 이상 입력해야합니다.');
//obj.value = obj.value.substring(0,sz);
//var text1 = $('.id');
obj.focus();
}
//obj.value = obj.value.substring(0, obj.value.length-1);
}
eval('document.all.'+id+'_bytes').innerHTML = eval('form.'+id).value.bytes()+" byte";
}
String.prototype.bytes = function()
{
var str = this;
var l = 0;
for (var i=0; i<str.length; i++) l += (str.charCodeAt(i) > 128) ? 2 : 1;
return l;
}
</script>
</HEAD>
<BODY>
<form name='form'>
질문1.<br>
<textarea id='chk1' name='chk1' cols='30' rows='10' style='overflow:hidden;'></textarea>
<div name='chk1_bytes' id='chk1_bytes'></div>
<br>
질문2.<br>
<textarea id='chk2' name='chk2' onkeyup='javascript:displayBytes(34,"chk1");' cols='30' rows='10' style='overflow:hidden;'></textarea>
<div name='chk2_bytes' id='chk2_bytes'></div>
</form>
참고하세요.
!-->