Gracias Pechi, al final he hecho algo parecido, pongo el código aquí por si os interesa:
<HTML>
<!-- Definimos 2 capas:
DivTxt - Contiene un campo de texto y una imagen, intentando simular un combo vacío con su flecha desplegable. Podemos introducir
nuevo texto aquí para darlo de alta en la BD cuando pulsemos el botón Aceptar (por ejemplo). Si lo que queremos es seleccionar un valor ya existente para dicho campo, basta con hacer click en la imagen de la flecha, con lo que llamará a la función 'mostrarDiv("DivSelect")', que displayará el combo con los valores existentes
DivSelect- Contiene los valores actuales para el campo de BD que representa. He puesto valores "a pelo", pero pueden ser cargados desde una BD. Cuando seleccionemos un elemento del combo, llama a "comprobarItem()" la cual comprueba si se trata del primer elemento del combo (lo definiremos vacío) lo que significa que queremos introducir un valor nuevo, para lo cual llama a 'mostrarDiv("DivTxt")
-->
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<TITLE></TITLE>
<script language="JavaScript">
/*Función: mostrarDiv
Objetivo: Hace visible el contenido de la capa ("DIV") cuyo identificador
es pasado como parámetro, a la vez que oculta el contenido de la capa que ocupa su misma posición. Es decir, si lo invocamos con el id. de la capa que tiene el combo, muestra éste, y oculta el campo de texto y la imagen de la otra capa. Si la llamamos con el id de ésta otra capa, hace lo contrario.
Parámetros de entrada: id - Identificador (propiedad "ID%2