单击时更新输入值

时间:2015-11-18 11:27:28

标签: javascript jquery

我输入了:

<form>
  <input class="total" type="text" value="" readonly="readonly" />
</form>

和div:

<div class="product">
  <figure>
    <img src="img/1.jpg" alt="product 1" />
    <!-- Hover -->
    <figcaption>
      <p>Add to input</p>
    </figcaption>
  </figure>
  <p class="descript">Description</p>
  <p class="price">99,00</p>
</div>

问题:如何在每次点击时按价格增加输入值?

现在我只增加了点击次数。

Fiddle

3 个答案:

答案 0 :(得分:1)

首先按0总计你的总数:

<input class="total" type="text" value="0" readonly="readonly" />

每次点击获取total值并为其添加product_price值时,请参阅下面的工作示例。

希望这有帮助。

    $(".product").click(function() {

        var product_price = parseFloat ( $('.price').text() );
        var total         = parseFloat ( $('.total').val() );

        if( !isNaN( total ) )
        {
            $(".total").val( parseFloat( total + product_price));
        }
    });    
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
    <input class="total" type="text" value="0" readonly="readonly" />
</form>

<div class="product">
    <figure>
        <img src="img/1.jpg" alt="product 1" />
        <!-- Hover -->
        <figcaption>
          <p>Add to input</p>
        </figcaption>
      </figure>
      <p class="descript">Description</p>
      <p class="price">99,00</p>
    </div>
 

答案 1 :(得分:0)

使用parseInt($('.price').html(), 10);

请检查:Updated Fiddle

$(".product").click(function() {
    // pobieranie wartości
    sum += parseInt($('.price').text(), 10);

    // add to input value
    $(".total").val(sum);
});    

答案 2 :(得分:0)

这个怎么样:

$(".product").click(function() {
    if(!$(".total").val()){
   $(".total").val((parseFloat($('.price').text())+1)); 
    }
    else{
          $(".total").val((parseFloat($(".total").val())+1)); 
    }  
}); 

JSFIDDLE