2012-03-14 18 views

答えて

0

は多分これは、次のことに役立ちます。

$("select").multiselect({ 
    header: "Choose only TEN items!", 
    click: function(e){ 

     if($(this).multiselect("widget").find("input:checked").length > 10) 
     { 
      return false; 
     } 
     else 
     { 
      return true; 
     } 

    } 
}); 
2

これは古いスレッドですが、誰もがこの問題を越えてくるために - ここHyndsバージョン

のために選択したチェックボックスの行数を制限するための正式な方法であり、

注:許可されている最大数を超えて選択しようとするユーザーに対しては、メッセージクラスを表示することをお勧めします。また、「> 10」は、この例では0,1,2,3、... 9 = 10の最大値を意味する第1のインデックス値であるゼロ「0」から数えられる。

回答:

var warning = $(".message"); 

$("select").multiselect({ 
    header: "Choose only TEN items!", 
    click: function(e){ 
     if($(this).multiselect("widget").find("input:checked").length > 10){ 
      warning.addClass("error").removeClass("success").html("You can only check ten checkboxes!"); 
      return false; 
     } else { 
      warning.addClass("success").removeClass("error").html("Check a few boxes."); 
     } 
    } 
}); 
0

注意あなたが選択する最大に達した後、あなたはまた、残りの項目を無効にすることができ、これは、このようにあなたが望む効果を持つ、より多くを追加し、ユーザーを防ぐことができます:

$('#multiselect').bind('multiselectChange', function(evt, ui) { 
    var selectedCount = $("option:selected", this).length; 

    $(this) 
     .find('option:not(:selected)').prop('disabled', selectedCount >= MAXIMUM_SELECTED_HERE).end() 
     .multiselect('refresh'); 
}); 
関連する問題