うまくいけば、これはあなたが使用またはあなたを助けることができるものです:
http://jsfiddle.net/VWRAd/
$(".cell").on("click", "input:checkbox", function () {
    var $this = $(this);
    var $total = $("#price");
    var $target = $("label[for='" + $this.attr("id") + "']");
    var item_value = +($target.html().replace("$", "") || 0);
    var cur_total = +($total.html().replace("$", "") || 0);
    if ($this.prop("checked") === true) {
        cur_total += item_value;
    } else {
        cur_total -= item_value;
    }
    $total.html("$" + cur_total);
});
class「price」の要素を「price」の要素に変更したことに注意してidください。いくつかの「価格」要素があると予想しない限り、それは理にかなっています。
そして、これを行う別の可能な方法があります...どちらが良いかわかりません:
http://jsfiddle.net/VWRAd/1/
$(".cell").on("click", "input:checkbox", function () {
    var $items = $(".cell").find("input:checkbox:checked");
    var $total = $("#price");
    var cur_total = 0;
    $items.each(function () {
        var $this = $(this);
        var $target = $("label[for='" + $this.attr("id") + "']");
        var item_value = +($target.html().replace("$", "") || 0);
        cur_total += item_value;
    });
    $total.html("$" + cur_total);
});
考慮すべき点がいくつかあります。アイテムを表示するときに、アイテムの実際の値から「$」を分離することは理にかなっています...「$」で値を格納していないと確信しているので、同様の構造が必要になる場合がありますに<label for="whatever">$<span class="the-value">100</span></label>。jQueryセレクターロジックが少し変更されますが、.replace頻繁に使用する必要がなくなります。また、他の誰かがすでに指摘しているように、チェックボックスのvalue属性にアイテムの価格を保存し、その方法で取得する方が(対応する<label>コンテンツを見つけるよりも)間違いなく簡単です。