// this is because of http://stackoverflow.com/questions/4398966/how-can-i-hide-select-options-with-javascript-cross-browser/4423543 (function($){ $.fn.extend({detachOptions: function(o) { var s = this; return s.each(function(){ var d = s.data('selectOptions') || []; s.find(o).each(function() { d.push($(this).detach()); }); s.data('selectOptions', d); }); }, attachOptions: function(o) { var s = this; return s.each(function(){ var d = s.data('selectOptions') || []; for (var i in d) { if (d[i].is(o)) { s.append(d[i]); console.log(d[i]); // TODO: remove option from data array } } }); }}); })(jQuery); // example $('select').detachOptions('.removeme'); $('.b').attachOptions('[value=1]');');