Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.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
使用jQuery的仅十进制数字文本框_Jquery - Fatal编程技术网

使用jQuery的仅十进制数字文本框

使用jQuery的仅十进制数字文本框,jquery,Jquery,我有以下jQuery函数使textbox只接受十进制数,但问题是它不接受,所以它只能作为整数textbox工作 我不想使用任何插件 以下是jQuery函数: $(document).ready(function () { $("#textbox1").keydown(function(event) { if (event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 27 || (ev

我有以下jQuery函数使textbox只接受十进制数,但问题是它不接受
,所以它只能作为整数textbox工作

我不想使用任何插件

以下是jQuery函数:

$(document).ready(function () {
    $("#textbox1").keydown(function(event)
    {
        if (event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 27 ||
        (event.keyCode == 65 && event.ctrlKey === true))
        {
            return;
        }
        else if(event.keyCode == 46)
        {
            return;
        }
        else 
        {
            if ((event.keyCode < 48 || event.keyCode > 57) && 
                (event.keyCode < 96 || event.keyCode > 105 ))
            {
                event.preventDefault(); 
            }   
        }        
    });
});​
$(文档).ready(函数(){
$(“#textbox1”).keydown(函数(事件)
{
如果(event.keyCode==8 | | event.keyCode==9 | | event.keyCode==27||
(event.keyCode==65&&event.ctrlKey==true))
{
返回;
}
else if(event.keyCode==46)
{
返回;
}
其他的
{
如果((event.keyCode<48 | | event.keyCode>57)和
(event.keyCode<96 | | event.keyCode>105))
{
event.preventDefault();
}   
}        
});
});​

那么
4.5.2

你的代码没有检查它

为什么不使用regex

[0-9]+(\.[0-9][0-9]?)?

模糊
事件
时只需检查匹配,那么
4.5.2

$("#textbox1").keydown(function(e){
    var key = e.which;

    // backspace, tab, left arrow, up arrow, right arrow, down arrow, delete, numpad decimal pt, period, enter
    if (key != 8 && key != 9 && key != 37 && key != 38 && key != 39 && key != 40 && key != 46 && key != 110 && key != 190 && key != 13){
        if (key < 48){
            e.preventDefault();
        }
        else if (key > 57 && key < 96){
            e.preventDefault();
        }
        else if (key > 105) {
            e.preventDefault();
        }
    }
});
你的代码没有检查它

为什么不使用regex

[0-9]+(\.[0-9][0-9]?)?
blur
事件

$(“#textbox1”).keydown(函数(e)时只需检查匹配{
$("#textbox1").keydown(function(e){
    var key = e.which;

    // backspace, tab, left arrow, up arrow, right arrow, down arrow, delete, numpad decimal pt, period, enter
    if (key != 8 && key != 9 && key != 37 && key != 38 && key != 39 && key != 40 && key != 46 && key != 110 && key != 190 && key != 13){
        if (key < 48){
            e.preventDefault();
        }
        else if (key > 57 && key < 96){
            e.preventDefault();
        }
        else if (key > 105) {
            e.preventDefault();
        }
    }
});
var-key=e.which; //退格、制表符、左箭头、上箭头、右箭头、下箭头、删除、numpad小数点、句点、输入 如果(键!=8&&key!=9&&key!=37&&key!=38&&key!=39&&key!=40&&key!=46&&key!=110&&key!=190&&key!=13){ 如果(键<48){ e、 预防默认值(); } 否则,如果(键>57和键<96){ e、 预防默认值(); } 否则,如果(键>105){ e、 预防默认值(); } } });
$(“#textbox1”).keydown(功能(e){
var-key=e.which;
//退格、制表符、左箭头、上箭头、右箭头、下箭头、删除、numpad小数点、句点、输入
如果(键!=8&&key!=9&&key!=37&&key!=38&&key!=39&&key!=40&&key!=46&&key!=110&&key!=190&&key!=13){
如果(键<48){
e、 预防默认值();
}
否则,如果(键>57和键<96){
e、 预防默认值();
}
否则,如果(键>105){
e、 预防默认值();
}
}
});