theme selector

light blue screenshot grey screenshot navy screenshot dark green screenshot red and black screenshot

by Tony Chang

All opinions on this site are my own and do not represent those of my employer.

Creative Commons Attribution License

reinput userscript

Jan 30, 2006, 02:05am EST



My friend Doug was telling me how he hates all drop down boxes found in web pages and would rather see sites using autocomplete style input boxes instead. So, during last night’s SuperHappyDevHouse, I wrote a greasemonkey script to automatically do this conversion.

re-input is a user script that looks for <select> tags on a page and replaces them with autocompleting text input boxes. I’m using a slightly modified version of Gadgetopia’s AutoSuggest to do the suggestions.

It colors all the input boxes that it creates so it’s obvious to you what’s been modified. It also tries to stop the form from being submitted if you enter an invalid menu option. Unfortunately, it’s not able to stop javascript form submission (form.submit()), so it doesn’t always work. You can go to to see it’s brokenness.

DC at Jan 30, 2006, 12:33pm EST

One time I watched a guy trying to install something and the language selections were not in alphabetical order by country, but in some other (random? by continent? who knows?) order. So I can definitely see how this could even be almost necessary. And not just on web pages.

Still, it requires that you know (or can easily guess) what the choices in the drop-down box are in advance. It seems like it should really work like a dropdown box that when you click on it, it drops the box, but lets you type more than a single character to narrow down the selections. Maybe that isn’t as nice aesthetically, so there’s probably some other option that would work even better than that.

tony at Jan 30, 2006, 12:44pm EST

When the box is blank, it shows all the options in the original order. Ideally, this would have a scroll bar attached to it if the full list is longer than the screen.

DC at Jan 30, 2006, 02:40pm EST

Actually, I realized that was probably how it worked about 5 seconds after I posted that comment… Oops.