테스트 사이트 - 개발 중인 베타 버전입니다

게시판글쓰기 글자수 제한 및 경고창 문의드립니다. 채택완료

세종2 7년 전 조회 4,942

게시판글쓰기 화면 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개

채택된 답변
+20 포인트
7년 전

minlength="17"

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

세종2
7년 전
고수님 빠른 답변 감사합니다.^^ 테스트 해보니
알려주신대로 적용해보니 정상적으로 작동 됩니다. 고수님 감사합니다. ^^

댓글을 작성하려면 로그인이 필요합니다.

7년 전

</p>

<p> </p>

<p><script language=javascript></p>

<p>

function displayBytes( sz, id )

{

 var form = document.form;</p>

<p> var obj = document.getElementById( id );</p>

<p> 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();</p>

<p>

  }

  //obj.value = obj.value.substring(0, obj.value.length-1);

 }</p>

<p> eval('document.all.'+id+'_bytes').innerHTML = eval('form.'+id).value.bytes()+" byte";

}</p>

<p>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;

}</p>

<p> </p>

<p>

</script></p>

<p></HEAD></p>

<p><BODY></p>

<p><form name='form'>

질문1.


<textarea id='chk1' name='chk1'  cols='30' rows='10' style='overflow:hidden;'></textarea>

<div name='chk1_bytes' id='chk1_bytes'></div>




질문2.


<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></p>

<p></form>

 </p>

<p> </p>

<p>

 

 

참고하세요.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

세종2
7년 전
고수님 답변 감사합니다.^^ 테스트 해보겠습니다.~~

댓글을 작성하려면 로그인이 필요합니다.

7년 전

   <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>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

세종2
7년 전
고수님 답변 감사합니다.^^ 테스트 해보겠습니다.~~

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인