如何将生成的复选框的值添加到total

时间:2015-03-04 15:29:50

标签: javascript html checkbox

问题描述:我有10个生成的复选框,如果选中需要在总价格中加价,但我有以下问题:

我有4个按钮,可以生成像这样的复选框

$('#stdntBtn').on('click', function () {
    cartNumber += 1;
    if (cartNumber > 10) {
        alert(errorMsg);
    } else {
        $('#ticketTable').append('<tr><td>Kaartje ' + cartNumber + ': Studentenkorting $8,00</td><td> <input type="checkbox" id="a' + cartNumber + '" name="popcornArrangement"><label for="b' + cartNumber + '">Popcorn arrangement (+2,50)(medium popcorn en frisdrank naar keuze)</label></td></tr>');
        totalPrice += 8;
        document.getElementById("totalPriceHtml").innerHTML = "Totaal bedrag: &euro;" + totalPrice;
    }
});

所以基本上我的id是a1到a10,因为你不能有10个以上的复选框。现在我在google上查找了一些内容,但我能找到的是如何查看是否在ID的基础上检查了一个框,如下例所示:

How to check whether a checkbox is checked in jQuery?

但我有10个不同的id,所以我认为我很聪明地做出这样的转换声明:

switch(cartNumber){         案例1:

        break;

    case 2:

        break;

    case 3:

        break;

    case 4:

        break;

    case 5:

        break;

    case 6:

        break;

    case 7:

        break;

    case 8:

        break;

    case 9:

        break;

    case 10:

        break;

    default: "test"
}

然后我意识到我不知道如何在其上创建一个switch语句,也许还有其他方法可以做到这一点,我只是想错了。 有什么想法吗?

1 个答案:

答案 0 :(得分:1)

类似的东西:

var checkedIds = [];

for(var i = 1; i <= 10; i++) {
    var elem = $("input#a" + i);
    if(elem.is(":checked")) {
        checkedIds.push(i);
    }
}