Javascript / jQuery解决方案,用于从表单中的下拉列表中对值进行求和

时间:2012-01-20 21:39:04

标签: javascript jquery drop-down-menu sum

我只是用javascript和jQuery学习绳索但是无法理解这个问题。我有3个下拉菜单,其中包含一些产品,每个菜单都有不同的价值。我想要做的就是让用户在每个下拉列表中选择一个项目,当他们点击提交按钮时,将添加值并在文本框中显示总计。我现在花了14个小时试图做到这一点没有成功,所以任何帮助都会非常感激!

4 个答案:

答案 0 :(得分:3)

很难确切地知道你正在寻找什么,但是这个附加的JSFiddle做了你所描述的 - 让我知道你是否想要解释它的任何部分。

http://jsfiddle.net/FdZDP/1/

继承人的要点:

$("#button").click(function() {
    var total = 0;
    $.each($(".summable") ,function() {
        total += parseInt($(this).val());
    });
    $("#sum").val(total)
});

答案 1 :(得分:0)

这应该是它的要点:

$(function(){
    $('#my_form').submit(function(e){
        e.preventDefault();
        var val1 = $("#dropdown1").val();
        var val2 = $("#dropdown2").val();
        var val3 = $("#dropdown3").val();
        var total = parseInt(val1) + parseInt(val2) + parseInt(val3);
        $("#my_textbox").val(total);
    });
});

您正在从每个下拉菜单中获取所选值。然后,将它们一起添加,确保它们是整数(如果不需要整数,则以某种方式转换为数字)。然后,将该值放入文本框中。

答案 2 :(得分:0)

对于科夫曼答案的变体:

$("#button").click(function() {
    var total = $('.summable').toArray().reduce(function(a, e) {
        return a + parseInt($(e).val(), 10);
    }, 0);
    $("#sum").val(total)
});

使用ES5 Array.reduce()函数来处理值的总和

答案 3 :(得分:0)

我想对从多选下拉列表框中选择的值求和,并在另一个文本字段中显示总计...

我的html代码:

<select   class="multi-select" multiple name="amt[]" id="amt" onChange="update_price(this)">

    <option value=""></option>
    <option value="5">5Rs</option>
    <option value="10">10Rs</option>
    <option value="15">15Rs</option>

</select> 


<input type="text" class="form-control" id="hidden" name="hidden" placeholder="Hidden" autocomplete="off"/>

javascript:

<script>

    function update_price(e) {
       var price = 0;                          
      $('option:selected', $(e)).each(function() {

       price += $(this).data('hidden');

      });
      $('#hidden').val(price);

    }

</script>
相关问题