diff options
author | lou <louiscuny@gmail.com> | 2011-12-16 14:43:26 +0100 |
---|---|---|
committer | lou <louiscuny@gmail.com> | 2011-12-16 14:43:26 +0100 |
commit | 54d1b893a8223525a55e030e1fdcfae98848e62f (patch) | |
tree | 53be38cc9ad8096a46dc505920001b3e15e57ade /js | |
parent | 71004b106c1c16e94d1f62dbca2ffa7e67183a48 (diff) | |
parent | 825d837282a5826b162c87d7ebbb27c389cdc83e (diff) | |
download | multi-select-54d1b893a8223525a55e030e1fdcfae98848e62f.zip multi-select-54d1b893a8223525a55e030e1fdcfae98848e62f.tar.gz multi-select-54d1b893a8223525a55e030e1fdcfae98848e62f.tar.bz2 |
Merge branch 'master' into gh-pages
Diffstat (limited to 'js')
-rw-r--r-- | js/jquery.multi-select.js | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/js/jquery.multi-select.js b/js/jquery.multi-select.js index c0eb3d3..8813720 100644 --- a/js/jquery.multi-select.js +++ b/js/jquery.multi-select.js @@ -190,10 +190,20 @@ } } }, - 'select_all' : function(){ - var ms = this; + 'select_all' : function(visible){ + var ms = this, + selectableUl = $('#ms-'+ms.attr('id')+' .ms-selectable ul'); + ms.find("option:not(option[value=''])").each(function(){ - ms.multiSelect('select', $(this).val(), 'select_all'); + var value = $(this).val(); + if (visible){ + var selectableLi = selectableUl.children('li[ms-value="'+value+'"]'); + if (selectableLi.filter(':visible').length > 0){ + ms.multiSelect('select', value, 'select_all'); + } + } else { + ms.multiSelect('select', value, 'select_all'); + } }); }, 'deselect_all' : function(){ |