JSFiddle - React, Tailwind, and code Playground
by Pointy
HTML
<button type=button>Sort Options</button>
<select class='whatever'>
<option value='22'>Hello</option>
<option value='101'>Banana</option>
<option value='1'>Sugar Cane</option>
<option value='-2'>Palm Oil</option>
</select>
JavaScript
$('button').click(function() {
var options = $('select.whatever option');
var arr = options.map(function(_, o) {
return {
t: $(o).text(),
v: o.value
};
}).get();
arr.sort(function(o1, o2) {
return o1.t > o2.t ? 1 : o1.t < o2.t ? -1 : 0;
});
options.each(function(i, o) {
console.log(i);
o.value = arr[i].v;
$(o).text(arr[i].t);
});
});