这个问题在这里已有答案:
用户一次只能选择3个复选框。如果用户选择第4个复选框,则应取消选中首先选中(列表复选框)。同时,如果用户选择第5个最后选择(第2个)则应取消选择。我无法创造这种逻辑。
<script>
var matches = [];
var $checks = $('input:checkbox').click(function(e) {
var numChecked = $checks.filter(':checked').length;
var id=$(this).index();
matches.push(id);
alert(matches);
if (numChecked > 3)
{
var new_no=matches[0];
alert("sorry, you have already selected 3 checkboxes!");
$('input:checkbox')[new_no].checked = false;
}
});
</script>
您可以在队列中添加所选选项,该队列最多可包含三个元素。一旦元素数量超过最大限制,只需从队列中删除一个。