js控制文本框只能输入数字

方法一:
第一步:禁用输入法;
第二步:控制keycode
function telCheckForKeyPress(evt){
    var key;
    if(window.event) {
        key = event.keyCode;
    }else{
        key = evt.which;
    }
    if (key > 47 && key < 58 || key == 8 || key == 45) {
        return;
    }else if (window.event) {
        window.event.returnValue = null;
    }else{
        if(evt && evt.preventDefault){
            evt.preventDefault();
        }
    }
}
<input  value="<bean:write name="kokyakuContentForm" property="ko_tan_tel"/>"
onKeyPress="telCheckForKeyPress(event)"
style="ime-mode:disabled"
maxlength="11"/>

方法二:
添加一个keyup时间,将非数字和非-替换成空,如下:
搜索全文非数字和非-,并替换成''
onkeyup="value=value.replace(/[^\d|^-]/g,'')"

你可能感兴趣的:(js,只能输入数字)