채택완료

자동 하이픈 스크립트 문제

안녕하세요

input 에 전화번호 를 넣을때

000-0000-0000 

자동 하이픈이 들어가도록 쓰고 잇습니다.

 

<script>

const hypenTel = (target) => {
 target.value = target.value
   .replace(/[^0-9]/g, '')
   .replace(/^(\d{2,3})(\d{3,4})(\d{4})$/, `$1-$2-$3`);
}

</script>

 <input type="text" name="wr_1" value="<?php echo $nw['wr_1']; ?>" id="wr_1" class="frm_input" oninput="hypenTel(this)" maxlength="13">

 

 

 

이걸 응용해서 주민번호 뒷 1자리까지 다른 input에서 받으려고 하는데요

000000-1

이렇게요

 

.replace(/^(\d{2,3})(\d{3,4})(\d{4})$/, `$1-$2-$3`);

 

여기를 변경하면 될꺼같은데.. 도저히 어떤 방식인지 이해가 안가서요 ㅠ

 

 

고수님들의 도움 부탁드립니다...ㅠ

|

답변 3개

채택된 답변
+20 포인트

.replace(/^(\d{6})(\d{1})$/, `$1-$2`); 하시면 될거 같습니다.

구글에 정규표현식이라고 검색하면 자세한 설명과 예제들이 많이 있습니다.

주민등록번호도 주민등록번호 정규표현식하면 많이 나옵니다....^^

이것도 참고를 해보세요~

<input type="text" name="jumin" id="jumin" class="frm_input" oninput="formatJumin(this)" maxlength="14">

<script>
const formatJumin = (target) => {
  target.value = target.value
    .replace(/[^0-9]/g, '')
    .replace(/^(\d{6})(\d{1})(\d{1,2})$/, "$1-$2$3");
}
</script>

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