2014-02-25 35 views
0

我有一个selectpicker,它动态地构建下拉值,并将'All'作为第一个选项。当点击“全部”时,我需要选择全部/无,当剩余的选项被选中/未选中时,需要选中/取消选中“全部”。能够通过下面的代码获得全选/无选择。当剩余选项被选中/取消选中时,需要帮助取消选中/选中“全部”。Bootstrap Selectpicker

$('.selectallselstatus').click(function() { 
    var firstli = $('a.selectallselstatus).parent(); 
    if (!firstli.hasClass('selected')) { 
     $('.selectpicker.selstatusall').selectpicker('selectAll'); 
     $("button[data-id='selstatus']").attr('title', "All"); 
     $("button[data-id='selstatus']").find('> span[class="filter-option pull-left"]').text($("button[data-id='selstatus']").attr('title')); 
    } else { 
     $('.selectpicker.selstatusall').selectpicker('deselectAll'); 
    } 
    return false; 
}); 

回答

0

通过使用这段代码解决。希望有助于他人。

var firstli = $('a.selectallselstatus').parent(); 
firstli.removeClass('selected'); 
var a = $('#selstatus').val(); 
a = a == null ? "" : a.toString().replace("-1,", ""); 
if((total elements in the dropdown) == a.split(",").length) { 
    firstli.addClass('selected'); 
    $("button[data-id='selstatus']").attr('title', "All"); 
    $("button[data-id='selstatus']").find('> span[class="filter-option pull-left"]').text($("button[data-id='selstatus']").attr('title')); 
} else {   
    var title = $("button[data-id='selstatus']").attr('title'); 
    if(title.indexOf("All,") > -1) title = title.replace("All, ", ""); 
    $("button[data-id='selstatus']").attr('title', title); 
    $("button[data-id='selstatus']").find('> span[class="filter-option pull-left"]').text(title); 
} 
return false; 
相关问题