Javascript 使用复选框向购物车添加折扣

Javascript 使用复选框向购物车添加折扣,javascript,forms,checkbox,shopping-cart,ajaxform,Javascript,Forms,Checkbox,Shopping Cart,Ajaxform,我真的需要有人能帮助我:-) 我想通过点击我店里的各种复选框给顾客打折 访客最多可以选择4个复选框。不是5号、6号等等。是否可以这样做 我现在的问题是,客户实际上可以免费获得商品——或者更糟——我必须付钱才能将商品卖给他们 以下是测试代码: <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <input type="checkbo

我真的需要有人能帮助我:-)

我想通过点击我店里的各种复选框给顾客打折

访客最多可以选择4个复选框。不是5号、6号等等。是否可以这样做

我现在的问题是,客户实际上可以免费获得商品——或者更糟——我必须付钱才能将商品卖给他们

以下是测试代码:

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type="checkbox" name="checkbox1" id="checkbox1" class="css-checkbox" value="20" />
<label for="checkbox1" class="css-label">banana</label><br>

<input type="checkbox" name="checkbox2" id="checkbox2" class="css-checkbox" value="20" />
<label for="checkbox2" class="css-label">apple</label><br>

<input type="checkbox" name="checkbox3" id="checkbox3" class="css-checkbox" value="20" />
<label for="checkbox3" class="css-label">biscuit</label><br>

<input type="checkbox" name="checkbox4" id="checkbox4" class="css-checkbox" value="20" />
<label for="checkbox4" class="css-label">jam </label><br>

<input type="checkbox" name="checkbox5" id="checkbox5" class="css-checkbox" value="20" />
<label for="checkbox5" class="css-label">orange </label><br>

<input type="checkbox" name="checkbox6" id="checkbox6" class="css-checkbox" value="20" />
<label for="checkbox6" class="css-label">pinepple </label><br>

<br /><br />

<span id="total"><b>Normal price: </b> 100</span></p>

<script>
var $total = 100;
var $total2 = 100;

$('input:checkbox').on('change', function() {
    if (this.checked)
        $total += -this.value;
    else
        $total -= -this.value;

        if ($total2 > $total)
            $('#total').html('<b>Discount  price: </b>'+$total);
        else
            $('#total').html('<b>Normal price: </b>'+$total);
});
</script>

香蕉
苹果
饼干
果酱
橙色
松果


正常价格:100

var$total=100; var$total2=100; $('input:checkbox')。在('change',function()上{ 如果(选中此项) $total+=-此值; 其他的 $total-=-此值; 如果($total2>$total) $('#total').html('折扣价:'+$total'); 其他的 $('#total').html('正常价格:'+$total); });
所以逻辑是-

如果单击了4个复选框,则禁用rest

var$total=100;
var$total2=100;
$('input:checkbox')。在('change',function()上{
如果($('input:checked')。长度==4){
$('input:checkbox:not(:checked)).attr(“disabled”,true);
}
否则{
$('input:checkbox:not(:checked').attr(“disabled”,false);
}
如果(选中此项)
$total+=-此值;
其他的
$total-=-此值;
如果($total2>$total)
$('#total').html('折扣价:'+$total');
其他的
$('#total').html('正常价格:'+$total);
});

香蕉
苹果
饼干
果酱
橙色
松果

正常价格:100
一次只能选择一个单选按钮,不能选择多个。好的,对不起。意思是复选框:-)
if($('input:checked').length>4)警报(“停止单击我的复选框”)它工作!但我不想要“警报”。也许可以在某种程度上禁用剩余的复选框?检查我的答案,伙计!哇,卡尔佩什!你救了我一天!我衷心感谢你:-)祝你有一个美好的一天!酷!这是你的第一个问题,你很快就得到了答案:D祝你今天过得愉快:D汉克斯,伙计!他花了将近10个小时在这上面。有点尴尬-你在5分钟内就搞定了:-)编程就是逻辑。我用下面的方法解决了你的问题。最多可以单击4个复选框(找到如何获取StackOverflow本身上单击的复选框数)2。禁用rest(找到了如何识别未选中的框,再次从StackOverflow获得了答案)合并了这两个,瞧,它正在工作!:)