2012-10-05 29 views
0

我有一个jsp页面的multibox。我想创建一个jquery函数,如果选择了3个以上的事务,那么剩下的复选框(从multibox渲染)将被禁用。我有写的foolowing code.When我在一个复选框(输入类型复选框)测试了它的工作,但它不工作multiboxes使用jquery禁用multibox

<html:multibox property="selectedTxns" styleClass="txnList" > 
              <bean:write name="Id" property="businessTypeVOId"/> 
             </html:multibox> 

jQuery函数 - >

<script> 
function countChecked() { 
var n = $(".txnList:checked").length; 

      if (n<3) {  $(".txnList:checkbox").removeAttr("disabled"); 
                $("#msg").text(""); 
             } 
            else {  $(".txnList:checkbox:not(:checked)").attr("disabled", true); 
               $("#msg").text("can not choose more than 3 transactions"); 
            } 
            } 

            $(".txnList:checkbox").click(countChecked); 
           </script> 

回答

1

我测试你的逻辑( jsFiddle),它的工作。

我不知道如何呈现multibox,但是.txnList容器拿着 的复选框?

如果是这样,你需要把一个空间,其间的容器和复选框选择这样的:

.txnList :checkbox.txnList :checked

这会再选择容器的复选框。

希望有所帮助。