【发布时间】:2016-10-24 21:17:54
【问题描述】:
好的,我有一个 jQuery,它限制了一次可以选择的复选框的数量。我的问题是:我有 10 个值为 1 的复选框。我还有 5 个值为 2 的复选框。在 Opecart 中,产品有一个特定的值,所以我不能在不破坏系统的情况下覆盖这个值。
这两组复选框有各自的限制:值 1 框的限制为 5。值 2 框的限制为 2。
它们的总和是 5。有没有办法将这些限制配对?
我所追求的一个例子: 用户勾选了 3 个 Value 1 Checkboxes,当前值为 3。他们现在可以再选择 2 个 value 1 checkboxes 或 1 value 2 checkboxes 来满足 5 的总和。
逻辑:
- 5 值 1 = 5
- 3 值 1 + 1 值 2 = 5
- 1 值 1 + 2 值 2 = 5
这是用于限制复选框的 Jquery
var limit = 5;
$('input.single-checkbox').on('change', function(evt) {
if($(this).siblings(':checked').length >= limit) {
this.checked = false;
}
});
这是产品页面的摘录,其中 Opencart 在复选框中定义了自己的默认值。
input class="limit" type="checkbox" name="option[547][]" value="1218" id="option-value-1218">
您可以看到,我不能只替换此值,因为它的目的在于将产品从页面拉到购物车。我需要找到一种在不损害系统的情况下应用我所说的逻辑的方法。
【问题讨论】:
标签: javascript jquery html checkbox opencart