2010-05-24 68 views
0

我使用这个代码,以检查是否复选框被选中或不..怎么办所有的每个功能,选中的复选框

$('#nextpage').click(function() { 
     var result = $('#Details input[type=checkbox]').attr('checked'); 
     if (result == true) { 
      $("#tabs").tabs('enable', 3).tabs('select', 3); 
     } 
     else { 
      $().ShowDialog('please select atleast one'); 
     } 
    }); 

使用这个我可以只检查一个复选框。如果我需要检查Details页面中的多个复选框,我该如何循环扔?

感谢

回答

1

从我从讨论和代码中可以理解,只有在选中一个或多个复选框时才想切换选项卡,否则打开一个对话框。

$('#nextpage').click(function() { 
    var collection = $('#Details input:checked'); 
    if(collection.length > 0) { 
      //either loop on collection array or switch tab 
      $("#tabs").tabs('enable', 3).tabs('select', 3); 
    } else { 
      $().ShowDialog('please select atleast one'); 
    } 
}); 
2

我不知道究竟你怎么就你的代码的其余部分利用这一点,但这里使用了各检查每个复选框:

$('#nextpage').click(function() { 
    $('#Details input[type=checkbox]').each(function() { 
     if($(this).attr('checked')) { 
      $("#tabs").tabs('enable', 3).tabs('select', 3); 
     } else { 
      $().ShowDialog('please select atleast one'); 
     } 
    }); 
}); 
+0

这里的API文档http://api.jquery.com/each/ – orandov 2010-05-24 17:29:23

+0

如果我用这个,我没有得到弹出消息时,我选择了力什么? 谢谢 – kumar 2010-05-24 17:43:31

+0

我不知道你使用的ShowDialog函数,但你可以尝试一个提醒。每个意味着它会提醒它为每个未选中的复选框。 如果你只是想检查它们全部,你可以尝试添加一个:选中到选择器的末尾,并计算你得到了多少行(如果是0,则不检查任何内容) – 2010-05-24 18:00:25

相关问题