Skip to content

Instantly share code, notes, and snippets.

@lscoates
Last active September 12, 2016 22:34
Show Gist options
  • Save lscoates/9e02deb289237de1a2e7fab2ae4715fd to your computer and use it in GitHub Desktop.
Save lscoates/9e02deb289237de1a2e7fab2ae4715fd to your computer and use it in GitHub Desktop.
$(function() {
var updatingCheckboxes = false,
$components = $('.component-checkbox');
$components.change(function(e) {
if (updatingCheckboxes) { return; }
var $el = $(this),
checked = $el.is(':checked');
if (checked) {
e.preventDefault();
updatingCheckboxes = true;
// Set all on/off components to unchecked state
$components.prop("checked", false);
$components.parent().removeClass('btn-success').addClass('btn-default');
$('.toggle__text').text('Add');
// Set selected component to checked state
$el.prop("checked", true);
$el.parent().removeClass('btn-default').addClass('btn-success');
$('.toggle__text', $el).text(!checked ? 'Added' : 'Add');
updatingCheckboxes = false;
}
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment