숫자만 입력받고 싶을 때 정보
숫자만 입력받고 싶을 때본문
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);'
연락처 항목 입력해보면 됩니다.
위 팁을 적용해봤는데요. 익스에서는 모두 정상적입니다.
크롬, 파폭에서도 적용은 되긴 하지만 익스와는 약간 차이점이 나타나네요.
숫자인지 체크는 하지만 입력된 문자는 그대로 남아있습니다.
익스처럼 잘못 입력된 문자를 없애려면 어떻게 하면 될까요.
샘플 : http://whiteeye.web-bi.net/bbs/write.php?bo_table=reservation
input 에 이렇게 적용했습니다. onkeydown='onlyNumber(this);'
연락처 항목 입력해보면 됩니다.
작성자에 의해 채택됐습니다.
onkeyup='onlyNumber(this);'
function onlyNumber(obj) {
var val = obj.value;
if(isNaN(val)) {
alert("숫자만 입력해 주세요");
obj.value = val.replace(/[^0-9]/gi, '');
}
}
function onlyNumber(obj) {
var val = obj.value;
if(isNaN(val)) {
alert("숫자만 입력해 주세요");
obj.value = val.replace(/[^0-9]/gi, '');
}
}
댓글 전체
리턴이 제대로 안되는 것 같은데
아래 제가 사용하는 코드로 바꿔보세요..
(참고로 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>
----------------------------------------------------------------
아래 제가 사용하는 코드로 바꿔보세요..
(참고로 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, '');
}
}
function onlyNumber(obj) {
var val = obj.value;
if(isNaN(val)) {
alert("숫자만 입력해 주세요");
obj.value = val.replace(/[^0-9]/gi, '');
}
}
감사합니다. 코드가 되게 간결하네요. 일단 작동은 잘 되네요.