select-auto.js 571 B

12345678910111213141516
  1. const selects = document.querySelectorAll('select');
  2. for (const select of selects) {
  3. select.onchange = (function (onchange) {
  4. return function (evt) {
  5. // reference to event to pass argument properly
  6. evt = evt || event;
  7. // if an existing event already existed then execute it.
  8. if (onchange) { onchange(evt); }
  9. var text = $(this).find('option:selected').text()
  10. var $aux = $('<select/>').append($('<option/>').text(text))
  11. $(this).after($aux)
  12. $(this).width($aux.width())
  13. $aux.remove()
  14. }
  15. })(select.onchange);
  16. }