added support for select, checkbox, radio