使用jquery限制复选框,基于选中的单选按钮

所以,我有一些复选框的问题。 首先让我告诉你关于“项目”本身。 这是一个webform,用户必须完成它并检查一些复选框和单选按钮,具体取决于他想要购买的内容。 其中第一个是2个无线电子弹,编号为1和2,代表他想要购买的产品数量。 接下来是大约5个代表产品颜色的复选框,它们有多少并不重要,事情是……我想,当用户在单选按钮上选择1时,只有1个复选框是如果他选择2,则只有2个复选框可供检查。 所以..有人可以帮助我吗? 我想到了jQuery,但我不知道……

有两个div,第一个div的ID是让我们说#radioButtons有2个单选按钮,第二个div有其余的复选框。

你没有在你的post中给出任何标记,所以我想是这样的:

HTML

Color 1: Color 2: Color 3: Color 4: Color 5:

jQuery的

 $('#radio1').on('change', function() { $('.checkBoxes :checkbox').prop('disabled', true); $(':checkbox:eq(0)').prop('disabled', false); }); $('#radio2').on('change', function() { $('.checkBoxes :checkbox').prop('disabled', true); $(':checkbox:eq(0), :checkbox:eq(1)').prop('disabled', false); }); 

样品锻炼

我们可能会使用出现问题的真实 HTML源代码。

编辑

我无法理解你为什么要这样做。 从可用性的角度来看,这个解决方案很不寻常,可能有点糟糕。 我来问几个问题。

  • 为什么你希望它像这样工作?
  • 你想让你的用户选择什么?

有很多内联选择的可能性,着名的例子是在apple.com上选择iPad类型。 但最重要的是为用户提供易于理解且使用感觉良好的用户界面。

您可以向复选框添加单击事件,然后在事件处理程序中检查允许的最大复选框的条件,然后根据是否已达到该限制返回true或false。

请参阅样品

我维护在无线电的id中创建的复选框的数量,并动态创建div中的复选框。

编辑:

我更新你给的小提琴。 请看看更新小提琴