2012-10-05 27 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

這會再選擇容器的複選框。

希望有所幫助。