JSFiddle - React, Tailwind, and code Playground

by Joe

HTML

<input id="someinput"><br><select id="optlist" multiple="multiple">
<option value="1">foo</option>
<option value="2">bar</option>
<option value="3">foobar</option>
<option value="4">foobarbaz</option>
</select>

JavaScript

$(function() {
  var opts = $('#optlist option').map(function() {
    return [
      [this.value, $(this).text()]
    ];
  });


  $('#someinput').keyup(function() {
    var rxp = new RegExp($('#someinput').val(), 'i');
    var optlist = $('#optlist').empty();
    opts.each(function() {
      if (rxp.test(this[1])) {
        optlist.append($('<option/>').attr('value', this[0]).text(this[1]));
      }
    });

  });

});