我有三个需要计算的输入。我在jQuery中使用.val()方法来获取输入的值并使用以下命令计算它们:
$("document").ready(function(){
$("#calculate").click(function(){
document.getElementById("result").innerHTML="$"+($("#einc").val()+$("#iinc").val()-$("#slint").val());
$("#result").css("display","inline");
});
前两个输入没有加起来,它们连接起来;即5 + 5 = 55。 但是,减法工作正常。所以如果我的前两个输入是10和10而我的最后一个输入是5,它将给我1010-5 = 1005。
我的预期答案应该是10 + 10-5 = 5.
我的代码出了什么问题?
答案 0 :(得分:2)
因为.val()返回字符串而+
也充当字符串连接运算符。
您可以使用parseInt()/parseFloat()/unary operator
$("#result").html("$" + (+$("#einc").val() + (+$("#iinc").val()) - $("#slint").val()));
答案 1 :(得分:1)
试试这个:
Number($("#your_input_field_id").val());
jQuery val()返回string。