Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 设置复选框选择的可变限制_Javascript_Jquery_Function_Checkbox_Input - Fatal编程技术网

Javascript 设置复选框选择的可变限制

Javascript 设置复选框选择的可变限制,javascript,jquery,function,checkbox,input,Javascript,Jquery,Function,Checkbox,Input,我正试图根据之前的选择设置可设置的复选框数量的可变限制 在我的代码中,我有一个选项输入,您可以选择模板和limitTemplate变量。然后我有一些复选框输入。比如说,我选择了两张卡的选项。然后我想在它下面选择两个复选框,然后就不能再选择其他卡了 出于某种原因,我的代码显示我在第一次选择时达到了限制,无论卡限制选项如何。正如你可以在我的模板编号中看到的那样,这里说的是从下面选择x个模板,我正在让limitTemplate工作,至少在这一点上 有人知道我做错了什么吗 我试图限制限制的代码部分如下:

我正试图根据之前的选择设置可设置的复选框数量的可变限制

在我的代码中,我有一个选项输入,您可以选择模板和limitTemplate变量。然后我有一些复选框输入。比如说,我选择了两张卡的选项。然后我想在它下面选择两个复选框,然后就不能再选择其他卡了

出于某种原因,我的代码显示我在第一次选择时达到了限制,无论卡限制选项如何。正如你可以在我的模板编号中看到的那样,这里说的是从下面选择x个模板,我正在让limitTemplate工作,至少在这一点上

有人知道我做错了什么吗

我试图限制限制的代码部分如下:

 if ($(templateCount >= limitTemplate)) {
          event.preventDefault();
          $('.tp-template-check[type="checkbox"]').not(':checked').prop('disabled', true);
          alert("You reached your limit");
        }
ps-它看起来像很多HTML,但基本上是复选框输入

jQuery.fn.fadeboltoggle=functionbool{ 返回bool?this.fadeIn400:this.fadeOut400; } $'tp-frequency'。关于'change',函数{ var templates=$'tp-frequency选项:selected'.val; $'template-number'.htmltemplates; //设置TP模板的限制 $'.tp模板检查'。关于“更改”,函数{ var limitTemplate=模板; 如果!this.checked | |$'.tp模板检查:checked'.length 0{ $'templateCount'.htmltemplateCount+Template+templateCount==1?:选择s+; } 如果$templateCount>=limitTemplate{ 违约事件; $'.tp模板检查[type=checkbox]'.not':选中'.prop'disabled',true; 当你达到极限时; } 如果templateCount==limitTemplate{ $'templateCountComplete'.FadeBooltLoggle$'.tp模板检查:已检查'.length==limitTemplate.addClass'block'; }否则,如果templateCount>limitTemplate{ $'.tp模板:复选框'.attr'checked',false; $'templateCountComplete'。隐藏; } }否则{ $'templateCountComplete'。隐藏; } }; //结束.tp模板检查功能 }; 选择限制

*有些选择会导致卡片数量增加/减少

请选择选项 5张牌 3张牌 2张牌 从下面选择模板。

冬天 春天 夏天 落下 新年 独立日 感恩节
您的一些if语句条件似乎不正确。您将条件封装为jQuery选择器

更改此项:

if ($(templateCount > 0)) {
      ...
}

if ($(templateCount >= limitTemplate)) {
      ...
}
为此:

if (templateCount > 0) {
      ...
}

if (templateCount >= limitTemplate) {
      ...
}

您不能创建此的最小版本吗?对于这样一个简单的问题,有太多的事情要做question@DarrenSweeney我移走了大部分东西。这是一个更精简的版本。所需的一切基本上都在TP限制代码块内。更进一步@保罗在你的另一个问题上看到了我的答案:谢谢,这绝对有帮助!有一件事我不明白,如果我达到极限,比如说3。如果我取消选中一个选定的输入并单击另一个输入,它将不允许我选择它。我认为您的函数目前无法解释这一点。如果少于限制,您需要添加到更改功能中,以启用复选框。谢谢!你能告诉我怎么做吗?