Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.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 如何让这个脚本将输入字段中键入的数字相乘?_Javascript_Html_Jquery - Fatal编程技术网

Javascript 如何让这个脚本将输入字段中键入的数字相乘?

Javascript 如何让这个脚本将输入字段中键入的数字相乘?,javascript,html,jquery,Javascript,Html,Jquery,我试图将用户键入的数字拉入文本字段,并将其乘以已建立的数字。(还有其他一些按钮可以从总数中加上+1或减去-1,效果很好。我唯一的问题是,在这里,通过用户在字段中键入值并拖动来获取用户的输入) 这是我的密码: <!-- HTML Field that I am trying to pull a number out of --> <input type="text" id="multNumInput"> 希望这是足够清楚的理解。从现

我试图将用户键入的数字拉入文本字段,并将其乘以已建立的数字。(还有其他一些按钮可以从总数中加上+1或减去-1,效果很好。我唯一的问题是,在这里,通过用户在字段中键入值并拖动来获取用户的输入)

这是我的密码:

<!-- HTML Field that I am trying to pull a number out of -->
<input type="text" id="multNumInput">

希望这是足够清楚的理解。从现在开始,每当我单击按钮时,它总是将数字更改回0。就这样。只有0。无论我将num var设置为什么,当单击mult按钮时,它总是恢复为0。

答案是@Robin Zigmond在评论中提供的:


“无法将multNum从字符串转换为数字。”

必须先转换为数字

multNum = parseInt(multNum);
number = number * multNum;
//...
首先,显而易见的是:将任何数字与具有
0
值的
number
变量相乘,将始终导致0-我想您知道这一点,但混淆或遗漏了该部分,可能是因为在加法过程之前将其混淆为
0
的初始化。将其设置为1或其他非负数,您可能会在途中获得更好的结果。:)

此外,要使其在JS中正确相乘,必须在两个数字之间相乘。 您的值是插入到
输入
字段中的
字符串
类型。 正如@Si8所建议的,您需要通过执行以下操作将其解析为
Number

multNum = parseInt(multNum);
此外,您似乎正在使用文本类型进行输入。 我建议您将其设置为
number
类型,以便限制输入值:

<input type="number" id="multNumInput">


查看Mozilla以了解更多信息。

您无法将
multNum
从字符串转换为数字-但更严重的是,0乘以任何值都仍然是0。是的,当然0*0是0啊哈!如上所述,无论乘以哪个数字,它始终等于0。我将尝试将其转换为一个数字,这似乎是一个简单的解决方案。谢谢。您还需要读取单击处理程序内部的输入值,而不是外部的输入值,因此它始终具有最新值。这是一个我无法理解的答案吗…:-/与乘法没有区别
console.log(“2”*“2”)
Yes,但为了避免任何警告,最好先转换为正确的类型。仅仅因为你可以,并不意味着你应该:)
<input type="number" id="multNumInput">