首页 新闻 搜索 专区 学院

关于限制输入框只能输入数字

0
悬赏园豆:20 [待解决问题]

我利用onkeypress事件即

“js.validate(this,event)”

调用方法如下:

validate: function (obj, event) { //数值型校验
var char = String.fromCharCode(event.keyCode);
var sValidate = "0123456789";
if (char == ".") {
if (obj.value == "" || obj.value.indexOf(".") > -1) {
event.returnValue = false;
}
}
else {
if (sValidate.indexOf(char) < 0) {
event.returnValue = false;
}
}
}

现在可以是可以限制只能是数字,但是如果我用QQ拼音或者其他输入法来输入中文时此事件就不触法,导致不能限制中文的输入。

xxxxxxx111的主页 xxxxxxx111 | 初学一级 | 园豆:182
提问于:2012-07-03 13:16
< >
分享
所有回答(5)
0

用onblur事件更好些

jerry-Tom | 园豆:4077 (老鸟四级) | 2012-07-03 13:46
1

文本框加上: onkeyup="value=value.replace(/[^\d]/g,'')"

快乐的langYa | 园豆:318 (菜鸟二级) | 2012-07-03 15:18
0

直接只能用键盘打入好了,引用下jquery文件

 

   $(document).ready(function() {

            $("#txtNoOfChildren").keypress(function() {

                  if ((event.keyCode < 48 || event.keyCode > 57) ) {

                         event.keyCode = 0;                

        }            

    });

        });

a85295853 | 园豆:2 (初学一级) | 2012-07-18 17:09

加我的群相互交流问题解决问题 183450771

支持(0) 反对(0) a85295853 | 园豆:2 (初学一级) | 2012-08-01 14:01
0
ime-mode: disabled; style属性可以禁用输入法,不过貌似只有 ie有效
土匪叶 | 园豆:168 (初学一级) | 2012-09-04 15:21
0

keypress(e){

 if ((e.keyCode < 48 || e.keyCode > 57) ) {

return false;

}           

}

乐享程序员 | 园豆:930 (小虾三级) | 2014-04-16 22:23
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册