Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.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 当浮动部分为空时,从JQuery中的输入元素获取数值不起作用_Javascript_Jquery_Html - Fatal编程技术网

Javascript 当浮动部分为空时,从JQuery中的输入元素获取数值不起作用

Javascript 当浮动部分为空时,从JQuery中的输入元素获取数值不起作用,javascript,jquery,html,Javascript,Jquery,Html,我想编码一个货币转换器,只允许整数和浮点。所以我检测输入的变化并进行一些计算。 html代码段如下所示: <input type="number" id="currency"> 除了输入为“12”时,所有操作都正常。值是空字符串吗? 我想要的实际上是12。如何解决这个问题?任何帮助都将不胜感激。 这是因为您使用的是input type=“number”,它不允许数字以外的任何输入(包括浮点数) 但您将字符串或字符作为输入,您将看到空的log语句,在执行parseInt(this.v

我想编码一个货币转换器,只允许整数和浮点。所以我检测输入的变化并进行一些计算。 html代码段如下所示:

<input type="number" id="currency">
除了输入为“12”时,所有操作都正常。值是空字符串吗? 我想要的实际上是12。如何解决这个问题?任何帮助都将不胜感激。

这是因为您使用的是
input type=“number”
,它不允许数字以外的任何输入(包括浮点数)

但您将字符串或字符作为输入,您将看到空的log语句,在执行
parseInt(this.value)
时,它将记录
NaN

因此,如果您仍然想输入字符串/数字,可以使用
input type=“text”


这是因为您使用的是
input type=“number”
,它不允许数字以外的任何输入(包括浮点数)

但您将字符串或字符作为输入,您将看到空的log语句,在执行
parseInt(this.value)
时,它将记录
NaN

因此,如果您仍然想输入字符串/数字,可以使用
input type=“text”


Input type=“number”
表示包括浮点、整数在内的任何数字,不允许输入文本。 因此,最好的解决方案可能是
Input type=“text”
,如果您想要精度,您可以通过以下示例中的toFixed方法获得

$(“#货币”)。关于(“输入”,函数(e){
var值=此.value
如果(是数字(值)){
警报(parseInt(value));
} 
否则{
警报(“文本”)
}
});
函数为数字(n){
return!isNaN(parseFloat(n))和&isFinite(n);
}

Input type=“number”
表示包括浮点、整数在内的任何数字,不允许输入文本。 因此,最好的解决方案可能是
Input type=“text”
,如果您想要精度,您可以通过以下示例中的toFixed方法获得

$(“#货币”)。关于(“输入”,函数(e){
var值=此.value
如果(是数字(值)){
警报(parseInt(value));
} 
否则{
警报(“文本”)
}
});
函数为数字(n){
return!isNaN(parseFloat(n))和&isFinite(n);
}

您的问题与本地化有关。

大家都确认,
允许输入整数和浮点

那么,当键入
12.
时,为什么您会得到一个空结果,而其他人会得到12?
因为他们的小数点是点,而你的小数点是别的


例如:在我自己的系统中,小数点是逗号,我在键入
12时得到一个空结果。
在键入
12时得到一个空结果。
您的问题与您的本地化有关。

大家都确认,
允许输入整数和浮点

那么,当键入
12.
时,为什么您会得到一个空结果,而其他人会得到12?
因为他们的小数点是点,而你的小数点是别的


例如:在我自己的系统中,小数点是逗号,我在键入
12时得到一个空结果。
而在键入
12时得到一个空结果,

我不确定我是否理解-小提琴似乎对所有数字都适用。如果你尝试仅用点输入浮点数,它将输出一个空字符串。当我输入“12”时,控制台上仍然有12这是因为,“12.”不是一个有效的数字(NaN)@当你输入时,输出是一个空字符串。我不确定我是否理解-小提琴似乎对所有数字都很好。如果你尝试只使用点输入浮点数,它将输出一个空字符串。当我输入“12”时,控制台上仍然有12。这是因为“12”不是一个有效的数字(NaN)@TreeNguyen当您键入时,输出是一个空字符串。我想要浮点数和整数-如果数字类型中不允许使用点,为什么允许输入?我想要浮点数和整数-如果数字类型中不允许使用点,为什么允许输入?我只想要整数和浮点数作为输入,如果类型为文本,则允许使用普通字符,这是另一个问题。Hello@chancyWu,检查小提琴这是您要找的东西吗?请再次阅读我的帖子,我将其更新以使其更清晰。thanks@chancyWu,如果输入12。如果警报12,请检查提琴我只想输入整数和浮点数,如果类型是文本,则允许使用普通字符,这是另一个问题。Hello@chancyWu,检查提琴这是你要找的东西吗?请再次阅读我的帖子,我将其更新以使其更清楚。thanks@chancyWu,如果输入12。如果警报12,请检查小提琴
$("#currency").on("input", function(e){
  var value = this.value
  console.log(value)
});
<input type="text" id="currency">