Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.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 基于返回值0或NaN计算负载_Javascript_Jquery_Html - Fatal编程技术网

Javascript 基于返回值0或NaN计算负载

Javascript 基于返回值0或NaN计算负载,javascript,jquery,html,Javascript,Jquery,Html,用户将输入三个值:数量、负载、持续时间,然后单击“总计”按钮,在瓦时文本框中显示乘法。但我总是得到0或NaN。我尝试输入type=“number”,但总是得到相同的结果。代码如下: $(文档).ready(函数(){ var quantityval=parseInt($(“#quantity”).text(),10); var wattsval=$(“#瓦数选项:已选定”).val(); var duration=parseInt($(“#duration_use”).text(),10);

用户将输入三个值:数量、负载、持续时间,然后单击“总计”按钮,在瓦时
文本框中显示乘法。但我总是得到0或
NaN
。我尝试输入
type=“number”
,但总是得到相同的结果。代码如下:

$(文档).ready(函数(){
var quantityval=parseInt($(“#quantity”).text(),10);
var wattsval=$(“#瓦数选项:已选定”).val();
var duration=parseInt($(“#duration_use”).text(),10);
$(“#总计”)。单击(函数(){
var totalval=(quantityval*wattsval)*持续时间;
$(“#瓦时”).val(totalval);
console.log($(“#瓦特小时”).val(totalval));
});

负载类型
量
瓦数(W)
持续时间使用
瓦时
全部的
扇子
熨斗
布鲁布
发动机
自动控制
25
30
45
80
100
120
1000
1500
2000
2500
全部的
这里有多个问题

  • 使用
    val
    而不是
    text
  • 直接取
    选择的值,而不是其
    选项
  • 将值的获取放在click事件中
  • 设置值时使用
    瓦特时
    而不是
    瓦特时
成功

var quantityval = +$("#quantity").val();
var wattsval = +$("#wattage").val();
var duration = +$("#duration_use").val();
注意

parseInt
很好,我只是简单地用一元
+
来保持它的简短

演示

$(文档).ready(函数(){
$(“#总计”)。单击(函数(){
var quantityval=+$(“#数量”).val();
var wattsval=+$(“#瓦数”).val();
var duration=+$(“#duration_use”).val();
日志(quantityval、wattsval、duration);
var totalval=(quantityval*wattsval)*持续时间;
日志(quantityval、wattsval、duration、totalval);
美元(“#瓦特小时”).val(totalval);
console.log($(“#瓦特小时”).val();
});
});

负载类型
量
瓦数(W)
持续时间使用
瓦时
全部的
扇子
熨斗
布鲁布
发动机
自动控制
25
30
45
80
100
120
1000
1500
2000
2500
全部的
这里有多个问题

  • 使用
    val
    而不是
    text
  • 直接取
    选择的值,而不是其
    选项
  • 将值的获取放在click事件中
  • 设置值时使用
    瓦特时
    而不是
    瓦特时
成功

var quantityval = +$("#quantity").val();
var wattsval = +$("#wattage").val();
var duration = +$("#duration_use").val();
注意

parseInt
很好,我只是简单地用一元
+
来保持它的简短

演示

$(文档).ready(函数(){
$(“#总计”)。单击(函数(){
var quantityval=+$(“#数量”).val();
var wattsval=+$(“#瓦数”).val();
var duration=+$(“#duration_use”).val();
日志(quantityval、wattsval、duration);
var totalval=(quantityval*wattsval)*持续时间;
日志(quantityval、wattsval、duration、totalval);
美元(“#瓦特小时”).val(totalval);
console.log($(“#瓦特小时”).val();
});
});

负载类型
量
瓦数(W)
持续时间使用
瓦时
全部的
扇子
熨斗
布鲁布
发动机
自动控制
25
30
45
80
100
120
1000
1500
2000
2500
全部的
.text()
替换为
.val()
并检索单击事件句柄中的所有值

$(文档).ready(函数(){
$(“#总计”)。单击(函数(){
var quantityval=parseInt($(“#quantity”).val(),10);
var wattsval=$(“#瓦数选项:已选定”).val();
var duration=parseInt($(“#duration_use”).val(),10);
var totalval=(quantityval*wattsval)*持续时间;
console.log(totalval)
美元(“#瓦特小时”).val(totalval);
});
})

负载类型
量
瓦数(W)
持续时间使用
瓦时
全部的
扇子
熨斗
布鲁布
发动机
自动控制
25
30
45
80
100
120
1000
1500
2000
2500
全部的
.text()
替换为
.val()
并检索单击事件句柄中的所有值

$(文档).ready(函数(){
$(“#总计”)。单击(函数(){
var quantityval=parseInt($(“#quantity”).val(),10);
var wattsval=$(“#瓦数选项:已选定”).val();
var duration=parseInt($(“#duration_use”).val(),10);
var totalval=(quantityval*wattsval)*持续时间;
console.log(totalval)
美元(“#瓦特小时”).val(totalval);
});
})

负载类型
量
瓦数(W)
持续时间使用
瓦时
全部的
扇子
熨斗
布鲁布
发动机
自动控制
25
30
45
80
100
120
1000
1500
2000
2500
全部的

immediate guess我将接受这样一个事实,即您没有将瓦特值解析为float或integer(无论您期望它是什么),使用console.log进行简单调试会发现问题所在……immediate guess我将接受这样一个事实,即您没有将瓦特值解析为float或integer(无论你期望它是什么)使用console.log进行简单调试会发现问题出在哪里…同样,您可能希望在实际的click函数本身内部执行这些步骤,否则检索的值将来自于document.ready函数启动时,而不是按钮启动时clicked@Jhecht谢谢,我已经把它放在演示中了。还有,你可能想o实际单击函数本身内部的那些步骤,否则检索的值将来自于document.ready函数启动时,而不是