The first one is what is/used-to-be? called a combo box. That is, a select box that also allows one to type in an entry if none of the options will do. In terms of the operation of a normal combo, the issue is that while I can put a text box above a select, and when submitted, take the selected option, if one, or the text box contents, if any, normally a combo will take an option selection and deposit that text in the text-box portion, in case you want to edit it. Could be breaking a peanut with a sledgehammer but the Ext module would give you access to the Ext.form.ComboBox widget (http://www.extjs.com/deploy/dev/docs/?class=Ext.form.ComboBox) which with the right js and a transform config option for the Ext component would turn an ordinary select into a nice combo box for those with javascript but would degrade to a select for those without. Personally Ext is my area but jquery ui might have a similar widget.