숫자만 입력받고 싶을 때

http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=32098

위 팁을 적용해봤는데요. 익스에서는 모두 정상적입니다.

크롬, 파폭에서도 적용은 되긴 하지만 익스와는 약간 차이점이 나타나네요.
숫자인지 체크는 하지만 입력된 문자는 그대로 남아있습니다.
익스처럼 잘못 입력된 문자를 없애려면 어떻게 하면 될까요.

샘플 : http://whiteeye.web-bi.net/bbs/write.php?bo_table=reservation

input 에 이렇게 적용했습니다. onkeydown='onlyNumber(this);'

연락처 항목 입력해보면 됩니다.
|

댓글 4개

리턴이 제대로 안되는 것 같은데

아래 제가 사용하는 코드로 바꿔보세요..
(참고로 ie10 까지, 크롬, 파이어폭스 모두 정상 작동합니다.)

------------------------------------------------------------

<!-- 인풋에 적용 -->
<input type="text" class="ed" size="4" maxlength="4" name=tel1 id="tel1" itemname="전화번호" value="<?=$tel1?>" required onkeydown="onlyNumber(this);" />

<!-- 아래에 스크립트 -->
<script type="text/javascript">
function onlyNumber(objtext1){
var inText = objtext1.value;
var ret;

for (var i = 0; i < inText.length; i++) {
ret = inText.charCodeAt(i);
if (!((ret > 47) && (ret < 58))) {
alert("숫자만을 입력하세요");
objtext1.value = "";
objtext1.focus();
return false;
}
}
if (objtext1.value.length==8) {
document.form1.RNI_idnum2.focus() ;
}
return true;
}
</script>

----------------------------------------------------------------
감사합니다. 도움이 되었네요. 참고로 이건 전체가 리셋되네요.
onkeyup='onlyNumber(this);'

function onlyNumber(obj) {
var val = obj.value;
if(isNaN(val)) {
alert("숫자만 입력해 주세요");
obj.value = val.replace(/[^0-9]/gi, '');
}
}
감사합니다. 코드가 되게 간결하네요. 일단 작동은 잘 되네요.
댓글을 작성하시려면 로그인이 필요합니다.

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기 기존 게시물은 열람만 가능합니다.

+
제목 글쓴이 날짜 조회
12년 전 조회 1,641
12년 전 조회 2,186
12년 전 조회 1,895
12년 전 조회 3,595
12년 전 조회 2,550
12년 전 조회 1,431
12년 전 조회 1,737
12년 전 조회 1,752
12년 전 조회 1,753
12년 전 조회 3,021
12년 전 조회 1,787
12년 전 조회 1,746
12년 전 조회 1,223
12년 전 조회 1,153
12년 전 조회 1,831
12년 전 조회 2,806
12년 전 조회 1,940
12년 전 조회 1,652
12년 전 조회 1,979
12년 전 조회 3,389