繁体   English   中英

jQuery一起添加输入值

[英]jquery adding input val together

由于某种原因,当返回的值应为3加上数字时,我的代码返回“ 0111”。

有没有更好的方法来编写此代码,使其增加输入文本的值?

var p = $(".p").val(); 
var r = $(".r").val();
var d = $(".d").val();
var s = $(".s").val();

var checkability = p + r + d + s;

alert(checkability)

您正在串联需要将其强制转换为数字的字符串。 val()以字符串形式返回数据,或者根据您的类型显式使用parseInt(var, 10)parseFloat

简单的方法是不使用一元+运算符作为变量的前缀:

var checkability = +p + +r + +d + +s;

小提琴

当然,最简单的方法是将字符串值强制转换为整数,例如:

var p = +$(".p").val(); 
var r = +$(".r").val();
var d = +$(".d").val();
var s = +$(".s").val();

jsFiddle示例

您也可以使用更长的parseInt()函数,例如var p = parseInt( $(".p").val(), 10);

使用parseInt使它们成为整数

var p = parseInt($(".p").val(),10); 
var r = parseInt($(".r").val(),10);
var d = parseInt($(".d").val(),10);
var s = parseInt($(".s").val(),10);

var checkability = p + r + d + s;

alert(checkability)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM