Javascript Android设备和浏览器中输入类型编号的捕获点

Javascript Android设备和浏览器中输入类型编号的捕获点,javascript,jquery,html,Javascript,Jquery,Html,在下面的代码片段中,如果我在控制台日志中输入“9999999999”和“9999999999.”,则两者都会显示相同的结果“99999999”,但不带点 我试图捕捉点符号,即使在数字之后。这里只允许输入类型编号,不能使用文本或任何其他类型 文本框用于数字 Number: <input type='number' id=txtNumber'/> 代码在 请帮助寻找解决方案。原因是您设置了type='number'。 我建议您设置type='text',并使用正则表达式检查输入中的值是

在下面的代码片段中,如果我在控制台日志中输入“9999999999”和“9999999999.”,则两者都会显示相同的结果“99999999”,但不带点

我试图捕捉点符号,即使在数字之后。这里只允许输入类型编号,不能使用文本或任何其他类型

文本框用于数字

Number: <input type='number' id=txtNumber'/>
代码在


请帮助寻找解决方案。

原因是您设置了
type='number'
。 我建议您设置
type='text'
,并使用正则表达式检查输入中的值是否为数字(包括点):


您可以使用函数来执行此操作:

$(document).ready(function () {
        $('#txtNumber').keyup(function () {
            var numbers = $(this).val(); console.log("numbers", numbers);
            // dump(numbers);
            numbers = parseInt(numbers).toFixed(2);
            console.log(numbers);
        });
    });

它将为您提供所需的输出。

因为
“9999999999.”
转换为数字的值是
9999999999
。既然它是
type='number'
,那么
.val()
将把该值转换成一个数字。可能的重复项-为什么要这样做,你想实现什么?你应该测试你的代码。这不仅不起作用,而且你会得到一个错误:
numbers.toFixed不是一个函数
。Himanshu-它生成了与numbers类似的错误。toFixed不是一个函数。Himanshu,你编辑的转换现有数据的代码片段,我需要捕获,但不想更改。捕获意味着你能写下期望的结果吗?泰语,输入类型应为数字。
  $(document).ready(function() {  
       $('#txtNumber').keyup(function () {
        if ($(this).val().match(/^[0-9]*\.?[0-9]*$/)){ //check if your value is number or not
         var numbers = $(this).val(); console.log("numbers", numbers);
         }
       });
    });
$(document).ready(function () {
        $('#txtNumber').keyup(function () {
            var numbers = $(this).val(); console.log("numbers", numbers);
            // dump(numbers);
            numbers = parseInt(numbers).toFixed(2);
            console.log(numbers);
        });
    });