首页 文章

几个选择下拉框来添加值

提问于
浏览
0

如果它们具有相同的“名称”,然后使用jquery将sum值放入数组中,如何找到两个不同的选择下拉列表的值并在选择时(而不是submition)将两个值相加?

EDIT

为了澄清一点,我正在动态创建需要看起来像这样的列表

BOX A,BOX A,TITLE

BOX B,BOX B,TITLE

BOX C,BOX C,TITLE等......

每个列表都是不同的,很少相同 . 下一次框可以是D E或F.当选中(当前.onchange)所有相应的框需要加在一起然后推入一个单独的数组,如果值不为空...

var s = [sumOfAs,sumOfBs,sumOfCs];

我希望这有帮助......还有后端是PHP感谢!

编辑

这是将第一组值推送到数组中的jquery代码...

$("#selectionBox select").change(function(){
    s = [];
    $("#selectionBox select option:selected").each(function(){
        $("#selected_songs").text('');

        var v = $(this).val();
        if(v != ''){
            s.push(v);
        }
        if(s != ""){ 
            $('#selectionButton').show(); 
            var mw = $("#list_month_New").val();
            var dw = $("#list_day_New").val();
            var yw = $("#list_year_New").val();
            var t = $("#listTitle").val();
            if(mw == "" || dw == "" || yw == ""){
                $("#songListWarning").show();
            }else{
                $("#songListWarning").hide();
            }
        }else{
            $("#list_month_New").val();
            $("#list_day_New").val();
            $("#list_year_New").val();
            $("#listTitle").val();
            $('#selectionButton').hide();
        }
    });
    s.sort();
    jQuery.each(s, function(){
            O = "";
            O = this+"
"; str = /&(.+)/.exec(O)[1]; num = O.replace(/\-.*/, ''); fullString = '<span style="color:black">'+num+'</span> - '+str; $("#selected_songs").append(fullString); });

我只需要弄清楚如何在初始值中添加另一个值?

1 回答

  • 0
    var runningTotals = {};
    $('select').each(function() {
        var $this = $(this);
        var name = $this.attr("name");
        var val = runningTotals[name];
        if (!val) {
            val = 0;
        }
        val += +($this.val());
        runningTotals[name] = val;
    });
    

    请参考fiddle


    EDIT 已编辑以更新您所做的更改编辑

相关问题