我正试图让一个表单显示/隐藏一个提交按钮,这取决于是否所有的单选元素都有一个选择-这就是我目前所做的。。你知道我做错了什么吗?
$(document).ready(function() {
$('#submit-btn').hide();
if ($(':radio:checked').length > 0) {//try reach selected radio here
$('#submit-btn').show();
}
});
var count = 0
$(':radio').each(function(){
count++;
});
if ($(':radio:checked').length == count) {
$('#submit-btn').show();
}
这可能有助于你的事业。。!!
$('.toCheck').length == $('.toCheck:checked').length;
如果计算结果为true,则该选择器的所有input
都是checked
!:)
如果选中了ANY单选元素,则返回true,而这不是您想要的。
不幸的是,没有快速处理无线电元素的方法,因为即使其中一个元素被选中,其他元素也不会显示为已选中。
您将不得不手动循环它们。
我使用Robin的代码片段进行了一些修改。
我没有正确解释每个"问题"都有一组5个单选按钮(我的错),但下面的代码满足了我现在的需求。
基本上和Robins一样,只是每个问题都有5个单选框,我把长度除以5,现在就可以了!谢谢大家:)
$(document).ready(function() {
$('#submit-btn').hide();
$("form input:radio").change(function() {
var questions = ($('.questions').length / 5);
var checked = ($('.questions:checked').length);
if (questions == checked)
{
$('#submit-btn').show();
}
});
});