Say you have a dropdown like this:
<select>
<option value="1">first</option>
<option value="2">second</option>
<option value="3">first</option>
<option value="4">second</option>
</select>
There is no way to select "first" with value "3". The onblur event loops over the options looking for a string match. Instead, each item in the <ul> should store its own index within the full list, and that should be used in the onblur.