Jquery逐步计数

时间:2014-08-11 11:20:24

标签: jquery count

我创建了一个从selectbox获取值的小脚本。可以使用加号和减号箭头更改选择框值。

我试图用4或6来增加这个值,但这会一次又一次地给我一个错误的值。

所以简而言之:我希望内部的值增加4或6或减少4或6.

HTML

<div class="quantity">
  <input type="text" name="quantity" value="{{ product.quantity }}" />
    <div class="change">
      <a href="javascript:;" onclick="updateQuantity('up');" class="up">+</a>
      <a href="javascript:;" onclick="updateQuantity('down');" class="down">-</a>
    </div>
</div>

JQUERY

 function updateQuantity(way){

  if(6 == 4){ //6 is a Twig tag and works. This is the only way to test if it's 4 or 6
    var qty = '4';
  }else {
    var qty = '6';
  }

    var quantity = parseInt($('.quantity input').val());

    if (way == 'up'){
        if (quantity < 100){
            quantity+qty; // gives me something like 444 or 666
        } else {
            quantity = 100;
        }
    } else {
        if (quantity > 6){
            quantity-qty; // actually works
        } else {
            quantity = 6;
        }
    }

    $('.quantity input').val(quantity);
}

有谁知道我做错了什么?我真的再也看不到了

3 个答案:

答案 0 :(得分:2)

qty是一个字符串,+将连接字符串。

使用qty = 4代替qty = '4'

还使用以下语句:

quantity+=qty;  // instead of quantity+qty

quantity-=qty;  // instead of quantity-qty

答案 1 :(得分:1)

嘿朋友6 0r 4你没有提到任何地方,但看到我的小提琴链接可能会帮助你。我添加的输入增加了4并减少了4。

在这里

`http://jsfiddle.net/19c2uanm/`

答案 2 :(得分:1)

在单引号内,值被视为字符串。

因此值连接(即)666或444。 使用时不带单引号,因此可以将其视为数字加法。 String usage in js