Skip to content

Commit

Permalink
Add clear button
Browse files Browse the repository at this point in the history
  • Loading branch information
matrozov committed Apr 9, 2017
1 parent 942d637 commit 6dbaebc
Show file tree
Hide file tree
Showing 10 changed files with 106 additions and 41 deletions.
13 changes: 13 additions & 0 deletions dist/css/selectopus.css
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.selectopus-root {
position: relative;
min-height: 34px;
height: auto;
overflow: hidden;
Expand Down Expand Up @@ -33,6 +34,18 @@
content: "\d7";
opacity: .4;
}
.selectopus-clear {
position: absolute;
top: 50%;
right: 9px;
margin-top: -8px;
width: 16px;
height: 16px;
font-size: 12px;
line-height: 16px;
text-align: center;
cursor: pointer;
}
.selectopus-popup {
display: block;
padding: 3px;
Expand Down
2 changes: 1 addition & 1 deletion dist/css/selectopus.min.css

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

37 changes: 25 additions & 12 deletions dist/js/selectopus.full.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
$root: false,
$placeholder: false,
$items: false,
$clear: false,
$popup: false,
$popupInput: false,
$popupItems: false,
Expand Down Expand Up @@ -54,6 +55,16 @@
.addClass('selectopus-items clearfix')
.appendTo(self.$root);

self.$clear = $('<div>')
.addClass('selectopus-clear')
.html('&#x2716;')
.click(self.view.items.onClear)
.appendTo(self.$root);

if (self._options.required) {
self.$clear.hide();
}

self.$popup = $('<div>')
.addClass('selectopus-popup dropdown-menu');

Expand Down Expand Up @@ -296,25 +307,20 @@
},

view: {
placeholder: {
hide: function() {
self.$placeholder.hide();
},

show: function() {
self.$placeholder.show();
}
},

items: {
createList: function() {
self.view.items.clear();

if ($.isEmptyObject(self._value)) {
self.view.placeholder.show();
self.$placeholder.show();
self.$clear.hide();
}
else {
self.view.placeholder.hide();
self.$placeholder.hide();

if (!self._options.required) {
self.$clear.show();
}
}

$.each(self._value, function(value) {
Expand All @@ -337,6 +343,13 @@
self.$items.empty();
},

onClear: function() {
self.value.clear();
self.view.items.createList();

return false;
},

onClick: function() {
if (!self._options.multiple) {
return true;
Expand Down
2 changes: 1 addition & 1 deletion dist/js/selectopus.full.min.js

Large diffs are not rendered by default.

37 changes: 25 additions & 12 deletions dist/js/selectopus.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
$root: false,
$placeholder: false,
$items: false,
$clear: false,
$popup: false,
$popupInput: false,
$popupItems: false,
Expand Down Expand Up @@ -54,6 +55,16 @@
.addClass('selectopus-items clearfix')
.appendTo(self.$root);

self.$clear = $('<div>')
.addClass('selectopus-clear')
.html('&#x2716;')
.click(self.view.items.onClear)
.appendTo(self.$root);

if (self._options.required) {
self.$clear.hide();
}

self.$popup = $('<div>')
.addClass('selectopus-popup dropdown-menu');

Expand Down Expand Up @@ -296,25 +307,20 @@
},

view: {
placeholder: {
hide: function() {
self.$placeholder.hide();
},

show: function() {
self.$placeholder.show();
}
},

items: {
createList: function() {
self.view.items.clear();

if ($.isEmptyObject(self._value)) {
self.view.placeholder.show();
self.$placeholder.show();
self.$clear.hide();
}
else {
self.view.placeholder.hide();
self.$placeholder.hide();

if (!self._options.required) {
self.$clear.show();
}
}

$.each(self._value, function(value) {
Expand All @@ -337,6 +343,13 @@
self.$items.empty();
},

onClear: function() {
self.value.clear();
self.view.items.createList();

return false;
},

onClick: function() {
if (!self._options.multiple) {
return true;
Expand Down
2 changes: 1 addition & 1 deletion dist/js/selectopus.min.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/css/selectopus.min.css

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 6dbaebc

Please sign in to comment.