Jquery 允许十进制/句点输入字段允许的字符

Jquery 允许十进制/句点输入字段允许的字符,jquery,html,Jquery,Html,我已禁用输入字段中除文本以外的任何其他字符,但我还需要允许使用十进制/句点字符,但我不确定从何处开始 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(func

我已禁用输入字段中除文本以外的任何其他字符,但我还需要允许使用十进制/句点字符,但我不确定从何处开始

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>

    <script type="text/javascript">

        $(document).ready(function() {

            $('.surnameInput').keypress(function(key) {
                if((key.charCode < 97 || key.charCode > 122) && (key.charCode < 65 || key.charCode > 90) && (key.charCode != 45)) return false;
            });

        });

    </script>



<form action="#">
<input type="text" id="surname" class="surnameInput" />
</form>

$(文档).ready(函数(){
$('.INPUT')。按键(功能(键){
如果((key.charCode<97 | | key.charCode>122)&(key.charCode<65 | | key.charCode>90)&(key.charCode!=45))返回false;
});
});
她是这一现场演示:


只要使用它的ascii码
44
46

期间代码为46,因此您可以将if更改为类似以下内容:

if((key.charCode!==46)和&(key.charCode<97 | | key.charCode>122)和&(key.charCode<65 | | key.charCode>90)和&(key.charCode!=45))返回false

$('.input')。按键(功能(键){
如果((key.charCode<97 | | key.charCode>122)&(key.charCode<65 | | key.charCode>90)&(key.charCode!=45)&(key.charCode!=46)&(key.charCode!=44)){
返回false;
}
});


我也刚刚意识到我可能也需要数字…对不起,我知道我没有问这个问题,但有没有办法也允许数字字符?所以你只需要数字和句点?只需要数字、文本和句点,我很抱歉,那么使用正则表达式是不是一种选择?我觉得如果太乱了,我很抱歉问一下,有没有办法把数字、文本和句点都加进去?同样,加上ascii值的范围