Javascript 当jquery选中三个复选框时,如何使div变灰?
我有一个页面,当选中三个复选框时,需要有一个div才能淡出。我正在使用下面的代码,但它不起作用。有什么建议吗Javascript 当jquery选中三个复选框时,如何使div变灰?,javascript,jquery,Javascript,Jquery,我有一个页面,当选中三个复选框时,需要有一个div才能淡出。我正在使用下面的代码,但它不起作用。有什么建议吗 <script> function countChecked() { var n = $("input:checked").length; if($("input:checked").length > 3) { } else { $(".chkExample") .fadeTo(500, 0.2) } } countC
<script>
function countChecked() {
var n = $("input:checked").length;
if($("input:checked").length > 3) {
}
else
{
$(".chkExample")
.fadeTo(500, 0.2)
}
}
countChecked();
$(":checkbox").click(countChecked);
</script>
函数countChecked(){
var n=$(“输入:已选中”).length;
如果($(“输入:选中”)。长度>3){
}
其他的
{
$(“.chkExample”)
.fadeTo(500,0.2)
}
}
countChecked();
$(“:复选框”)。单击(countChecked);
我将您的代码格式化了一点。这是在检查>3
。在这种情况下,这与>=4
相同。因此,您检查的是4个或更多,而不是3个或更多
如果您希望恰好选中3个框,则需要执行n==3
。如果您想要3个或更多,请使用n>=3,如果想要3个或更少,请使用n
现在随机的一面是:复选框实际上已经贬值了。使用[type=“checkbox”]
,因为它将使用本机javascript以加快速度
function countChecked() {
var count = $('input[type="checkbox"]:checked').length;
// this will test for 3 or more >=
if (count >= 3) { alert('3 or more checked!'); }
else { $(".chkExample").fadeTo(500, 0.2) }
}
countChecked();
// assuming you are using at least 1.7.2 of jQuery
// but start using `.on()` and with checkboxes/radios I always use 'change'
$('input[type="checkbox"]').on('change', countChecked);