在Jquery中将两个值相加的问题

时间:2010-10-15 11:50:06

标签: jquery

我无法得到两个值的正确总和。我想总结一下cena1和kolicina。 (cena1 + kolicina)和(cena1 * kolicina) 我的jquery代码

<script type="text/javascript"> 
function izracunaj() {

    var sum = 0;
    $("#kolicina").each(function() {

    var cena = $("#artikel").val().split("-"); 
    var cena1 = cena[1]; // HERE I GET VALUE 0.17
    var kolicina = $("#kolicina").val(); // VALUE 10

        });
}

</script>

3 个答案:

答案 0 :(得分:4)

您正在处理字符串,而不是数字,看起来您想要浮点数,在这种情况下,您将使用parseFloat()从给定字符串中获取数字:

function izracunaj() {
  var sum = 0;
  $("#kolicina").each(function() {
      var cena = $("#artikel").val().split("-"); 
      var cena1 = parseFloat(cena[1]);
      var kolicina = parseFloat($("#kolicina").val());
      sum += cena1 * kolicinal;
  });
  //use sum
}

但是,ID应该是唯一的,所以我不确定为什么在这里进行.each()调用,它可能只是:

function izracunaj() {
  var cena = parseFloat($("#artikel").val().split("-")[0]),
      kolicina = parseFloat($("#kolicina").val());
      sum = cena * kolicinal;
  //use sum
}

答案 1 :(得分:1)

$("#kolicina").val();可能是一个字符串而不是一个数字。尝试使用parseFloat();

答案 2 :(得分:1)

您可以尝试在值上使用parseFloat。 e.g。

var answer = parseFloat(cena1) + parseFloat(kolicina);