Я хотел бы предложить размещение как кнопка внутренние параметры там в самом начале. Затем используйте CSS и JS для переключения класса, который скрывает/показывает соответствующие внутренние элементы. Учитывая, что вы упоминаете, что вы меняете значение внутри раскрывающегося списка, я бы предположил, что у вас уже есть кнопка .on('click')
где-то, этот код просто расширит это.
Используя .btn-active-toggle
и внутренние .when-active
или .when-inactive
классов, у вас есть возможность использовать эту же логику в ряде мест, которые вы хотели бы, чтобы переключить внутреннее отображение кнопки (или, вернее, что-нибудь с классом от .btn-active-toggle
). В терминах соглашений об именах данный загрузочный экземпляр включает CSS для любого .btn
с классом .active
, вы можете захотеть использовать другое имя класса, чем .active
, если вы не желаете этого готового стиля; просто обновите JS и CSS ниже.
Примечание: это решение не является лучшим с точки зрения доступности, поскольку считыватели экрана будут считывать оба внутренних элемента, не зная, что является активным. Если это важно для вас, рассмотрим так же переключаясь aria values to specify which is active
HTML
<button type="button" class="btn btn-sm btn-active-toggle" id="removeDwell">
<span class="when-active">
<i class="glyphicon glyphicon-remove"></i> No filter
</span>
<span class="when-inactive">
<i class="glyphicon glyphicon-refresh"></i> Reset
</span>
</button>
CSS
.btn-active-toggle.active .when-active,
.btn-active-toggle .when-inactive{
display:inline-block;
}
.btn-active-toggle.active .when-inactive,
.btn-active-toggle .when-active{
display:none;
}
JS
$('#removeDwell').on('click', function(){
$(this).toggleClass('active');
})
JSFIDDLE
Если вы только переключение между двумя состояниями, вы можете обнаружить, что флажок - лучший вариант, и есть плагины Bootstrap для их стилизации, например http://www.bootstraptoggle.com/ –
@TiesonT. Да согласен. Я пробовал это, но не уверен с коммутатором. Есть ли способ сделать это с помощью кнопки? (Как нажатие кнопки изменит текст на кнопке, чтобы «сбросить» с другим цветом?) .. Здесь нужны входные данные. – TechnoCorner