如何在有限复选框被选中后禁用复选框? 我想创建两种不同的形式,其中第一种形式的用户只能选中3个复选框,其余的复选框应该被禁用,而在第二种形式中只能选择两个复选框,其余的应该禁用。使用Jquery禁用复选框
0
A
回答
2
这里有一个简单的代码片段,应该可以做你想做的。只需调整表单上的自定义属性data-checksallowed
,它应该处理任意数量的允许复选框。
$('[data-checksallowed]').on("change", 'input[type="checkbox"]', function() {
var parent = $(this).closest("[data-checksallowed]");
var checksallowed = parent.data('checksallowed');
var checkboxes = parent.find('input[type="checkbox"]');
var checkedboxes = checkboxes.filter(':checked');
var uncheckedboxes = checkboxes.not(checkedboxes);
if (checkedboxes.length == checksallowed)
uncheckedboxes.prop('disabled', true);
else
uncheckedboxes.prop('disabled', false);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form data-checksallowed="3">
<input type="checkbox" />
<input type="checkbox" />
<input type="checkbox" />
<input type="checkbox" />
<input type="checkbox" />
</form>
<form data-checksallowed="2">
<input type="checkbox" />
<input type="checkbox" />
<input type="checkbox" />
<input type="checkbox" />
<input type="checkbox" />
</form>
+0
@priya你为什么不接受这个答案?有什么不适合你吗? – dave
1
像这样的事情会为你工作。
<div id="chks">
<input type="checkbox" value="1" /> 1
<input type="checkbox" value="2" /> 2
<input type="checkbox" value="3" /> 3
<input type="checkbox" value="4" /> 4
<input type="checkbox" value="5" /> 5
<input type="checkbox" value="6" /> 6
<input type="checkbox" value="7" /> 7
<input type="checkbox" value="8" /> 8
</div>
JavaScript的将是这样的:
$('#chks input[type="checkbox"]').click(function(){
// get the count of all checked boxes
var cnt = $('#chks input[type="checkbox"]:checked').length;
if(cnt == 3){
// if cnt is equal to 3 disable all checkboxes that are NOT checked
// you want to leave the checked ones enabled
$('#chks input[type="checkbox"]').not(':checked').attr('disabled', 'disabled');
}else{
// if count is not equal to 3 make sure the unchecked are enabled
// count should never be more than 3 because this will disable them
$('#chks input[type="checkbox"]').not(':checked').removeAttr('disabled');
}
});
相关问题
- 1. 复选框使用jQuery启用/禁用
- 2. 使用jQuery禁用/启用复选框
- 3. 使用jQuery启用/禁用复选框
- 4. 未使用jquery禁用复选框
- 5. 使用JQuery启用/禁用复选框单击复选框使用JQuery
- 6. 禁用复选框的jQuery
- 7. jQuery的启用/禁用复选框
- 8. JQuery - 每行启用/禁用复选框
- 9. 复选框启用/禁用jquery
- 10. Jquery启用/禁用复选框
- 11. jQuery复选框启用禁用
- 12. 使用jquery选择最大选择后禁用复选框
- 13. JQuery复选框启用/禁用使用Jquery Mobile
- 14. 禁用复选框
- 15. 复选框禁用
- 16. 禁用文本框单击复选框不工作使用jquery
- 17. JQUERY使禁用复选框项目时,用户选择特别
- 18. 使用javascript/jquery禁用一组选择元素复选框
- 19. jQuery禁用复选框样式动作
- 20. 检查复选框已禁用(jquery)
- 21. JavaScript(jQuery)禁用复选框问题
- 22. jQuery的 - 多状态禁用复选框
- 23. 如何禁用jquery复选框?
- 24. jQuery禁用复选框按值排列
- 25. 禁用子复选框,如果主主复选框被禁用
- 26. 复选框禁用启用
- 27. 使用复选框和jQuery禁用/启用元素?
- 28. 如何在primefaces中启用/禁用使用jQuery的复选框?
- 29. 使用jquery在gridview中启用禁用的复选框
- 30. 使用jquery启用或禁用复选框列表项目
你尝试过什么吗?你能告诉我们你到底在哪里挣扎吗? –
http://stackoverflow.com/questions/2330209/jquery-checkbox-enable-disable检查它 – m2j
@priya:我希望你的问题得到解决,请标记答案无论哪个答案帮助你。所以,它可以帮助别人。 –