次のスクリプトを使用して、特定のクラスのすべてのチェックボックスを選択しています。
$(document).ready(function(){ // 1
// 2
$(':checkbox.selectall').on('click', function(){
// 3
$(':checkbox[class='+ $(this).data('checkbox-name') + ']').prop("checked", $(this).prop("checked"));
$(':checkbox[class='+ $(this).data('checkbox-name') + ']').trigger("change");
});
});
ただし、[すべて選択解除]チェックボックスで無効になっているチェックボックスを選択解除/選択できるため、問題が発生します。
私はこれを試しました
$(document).ready(function(){ // 1
// 2
$(':checkbox.selectall').on('click', function(){
// 3
$(':checkbox[class='+ $(this).data('checkbox-name') + !$(:disabled) + ']').prop("checked", $(this).prop("checked"));
$(':checkbox[class='+ $(this).data('checkbox-name') + !$(:disabled) + ']').trigger("change");
});
});
しかし、それは機能しません。問題を紹介するためにjsfiddleを作成しましたhttp://jsfiddle.net/e67Fv/