Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在文本框中只允许数字 函数AllowOnlyNumber(evt){ var charCode=(evt.which)?evt.which:event.keyCode 如果(字符码>31&(字符码57)){ if(charCode==8&&charCode==46){ 返回false; } } 返回true; }_Javascript - Fatal编程技术网

Javascript 如何在文本框中只允许数字 函数AllowOnlyNumber(evt){ var charCode=(evt.which)?evt.which:event.keyCode 如果(字符码>31&(字符码57)){ if(charCode==8&&charCode==46){ 返回false; } } 返回true; }

Javascript 如何在文本框中只允许数字 函数AllowOnlyNumber(evt){ var charCode=(evt.which)?evt.which:event.keyCode 如果(字符码>31&(字符码57)){ if(charCode==8&&charCode==46){ 返回false; } } 返回true; },javascript,Javascript,如何仅允许在此文本框中写入数字和删除键或退格 对于支持数字输入的浏览器,为什么不使用数字输入,否则使用javascript: function AllowOnlyNumbers(evt) { var charCode = (evt.which) ? evt.which : event.keyCode if (charCode > 31 && (charCode < 48 || charCode > 57)){

如何仅允许在此文本框中写入数字和
删除键
退格

对于支持数字输入的浏览器,为什么不使用数字输入,否则使用javascript:

    function AllowOnlyNumbers(evt) {
        var charCode = (evt.which) ? evt.which : event.keyCode
        if (charCode > 31 && (charCode < 48 || charCode > 57)){
            if (charCode === 8 && charCode === 46) {
                return false;
            }
        }
        return true;
    }
函数AllowOnlyNumber(evt){
evt=(evt)?evt:window.event;
var charCode=(evt.which)?evt.which:evt.keyCode;
如果(字符码>31&(字符码<48 | |字符码>57)){
返回false;
}
返回true;
}
这是一把小提琴:


发件人:

我在此处为您的问题创建了此解决方案:

这里我使用event.charCode==0来允许按非字符键(允许删除、退格和其他非字符键),并检查输入的值是否为数字。
function AllowOnlyNumbers(evt) {
    evt = (evt) ? evt : window.event;
    var charCode = (evt.which) ? evt.which : evt.keyCode;
    if (charCode > 31 && (charCode < 48 || charCode > 57)) {
        return false;
    }
    return true;
}

我希望这有帮助

为什么不把它做成“数字”类型的输入?可能是重复的,谢谢你的回答,我用了
它不工作。我加了一把小提琴,它工作得很好,但这取决于你的浏览器,我刚刚在Chrome上试过,它工作得很好,但在Safari上不工作。所以这取决于你的目标浏览器。我使用firefox和fiddle。谢谢你的回答,只有
del
键不起作用。但是
backspace
键起作用了。 event.charCode == 0 isNaN