Foros del Web » Programando para Internet » Javascript »

FORM: Como convertir type="select" en type="text"

Estas en el tema de FORM: Como convertir type="select" en type="text" en el foro de Javascript en Foros del Web. Hola, una opción seria: [<label id="cambia">...</label>] Y en el "onchange" hacer: Código HTML: if(this.value="Ingresar Nueva opcion"){ cambiar el contenido de [cambia] por input type="text" name="nombre ...
  #1 (permalink)  
Antiguo 01/04/2010, 12:30
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
FORM: Como convertir type="select" en type="text"

Hola,

una opción seria:

[<label id="cambia">...</label>]

Y en el "onchange" hacer:

Código HTML:
if(this.value="Ingresar Nueva opcion"){

cambiar el contenido de [cambia] por

input type="text" name="nombre del SELECT"...

}
Pero UDs que opinan ?

Hay algun DOM o algo para CAMBIAR un SELECT por un TEXT ?

Gratisimas.
  #2 (permalink)  
Antiguo 01/04/2010, 14:52
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Respuesta: FORM: Como convertir type="select" en type="text"

Dudo mucho que se pueda cambiar, porque tienen propiedades distintas, el input text no contiene una lista, el select si, lo que podrías hacer es reemplazar un elemento por el otro, tomando su id, creando un elemento nuevo, asignando el id del elemento viejo al elemento nuevo y eliminando el viejo. Esa sería la único opción que veo.
  #3 (permalink)  
Antiguo 02/04/2010, 08:30
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: FORM: Como convertir type="select" en type="text"

Hola

El Dom te da la posibilidad de ocultar y mostrar elementos. Algo como esto

Cita:
Elelemento.style.display = (Elelemento.style.display == 'none') ? 'block' : 'none';
Para ello crea los dos elementos uno, el select, block y el text como none

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #4 (permalink)  
Antiguo 02/04/2010, 09:19
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Respuesta: FORM: Como convertir type="select" en type="text"

Gratitud.

La idea es que al NO ENCONTRAR la opcion [X] en la LISTA del SELECT, el select tenga la opcion [agregar opcion] y entonces el SELECT se combierta en una caja de TEXTO.
  #5 (permalink)  
Antiguo 02/04/2010, 11:21
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Respuesta: FORM: Como convertir type="select" en type="text"

Pues tu idea así como la planteas no se puede, tienes dos opciones, destruir un elemento y crear otro u ocultar uno (en lugar de destruirlo) y mostrar otro. No se puede asi como tú lo planteas.
  #6 (permalink)  
Antiguo 04/04/2010, 10:27
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Respuesta: FORM: Como convertir type="select" en type="text"

Hola, como creo y destruyo elementos SELECT y TEXT?
  #7 (permalink)  
Antiguo 04/04/2010, 12:45
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: FORM: Como convertir type="select" en type="text"

Hola

Cita:
Iniciado por Anarko Ver Mensaje
Hola, como creo y destruyo elementos SELECT y TEXT?
No has de crear o destruir nada. Solo has de mostrar o esconder. Para ello en mi post anterior te di la solución

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #8 (permalink)  
Antiguo 05/04/2010, 16:38
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Respuesta: FORM: Como convertir type="select" en type="text"

Pensandolo bien es mejor ocultar y esconder, sin embargo hay un detalle, el id debe ser único, en este caso y en base al código de Adler, solo faltaría cambiar los ID, cuando está oculto el elemento recibe el ID que corresponde y cuando está oculto su ID es igual a vacío. Esa sería la mejor forma que encuentro.
  #9 (permalink)  
Antiguo 06/04/2010, 11:03
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Respuesta: FORM: Como convertir type="select" en type="text"

Cordial saludo.

Al respecto de "APARECER" - "DESAPARCER" elementos con getElementById...

Como se hace para que UN ELEMENTO aparezca LENTAMENTE, de manera bonita, artistica...

Para que se depliegue LENTAMENTE... y se oculte de manera LENTA y armoniosa...

Que es lo que hay que hacer ?

Layer{desaparezca/aparezca despacio} ??

Gratitud
  #10 (permalink)  
Antiguo 06/04/2010, 13:27
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Respuesta: FORM: Como convertir type="select" en type="text"

De manera lenta claro que se puede, pero de ahí a que eso lo veas como bonito y artístico ya es otra cosa, talvez no te convenza, pero es lo que se puede hacer. Si quieres hacer de tu web un arte pues hazlo con flash.

Ahora como se hace lentamente? mejor olvidalo, es complicado, te doy el código para que desaparezca y aparezca el otro así de frente. A decir verdad eso a nadie le molestará excepto a ti.

En primer lugar debes definir un evento. Eso lo definiste sería algo así:

Código:
 var txt = document.getElementById('contenedor', 'input')[0];
 var sel = document.getElementById('contenedor', 'select')[0];
  ide = 'idElemento'; // Este es el id que debes definir
 if (this.value == "Ingresar Nueva opcion") {
    txt.style.display = 'none';
    txt.id = '';
    txt.name = '';
    sel.style.display = 'inline';
    sel.id = ide;
    sel.name = ide;
 } else {
    sel.style.display = 'none';
    sel.id = '';
    sel.name = '';
    txt.style.display = 'inline';
    txt.id = ide;
    txt.name = ide;
 }
Primero inténtalo de esta manera si te sale tal vez haga el código para hacerlo aparecer y desparecer lentamente. Digo "tal vez" porque la verdad no le veo objeto, es tan poca cosa un input o un select que el efecto sería un esfuerzo demasiado grande para tan poco espectáculo. Suerte!

Última edición por ElJavista; 06/04/2010 a las 15:01
  #11 (permalink)  
Antiguo 06/04/2010, 14:42
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Respuesta: FORM: Como convertir type="select" en type="text"

Gratitud.

Date cuenta EN ESTA PAGINA la forma como aprece el MENU del enlace [HERRAMIENTAS].

Como se hace ese EFECTO ??

A que PROPIEDADES hay que acudir ?

Claro que me sirve el código facilitado.

  #12 (permalink)  
Antiguo 06/04/2010, 15:04
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Respuesta: FORM: Como convertir type="select" en type="text"

Y bueno, ese efecto no es tan simple, de hecho yo nunca hago exactamente eso, solo hago aparecer la capa, pero el menú ese tiene el efecto de persiana. Bueno, tienes varias opciones para hacer eso, no se trata solamente de acudir a propiedades, es más que eso. Te recomiendo un par de cosas, primero aprende un poco más de JavaScript, especialmente lo referente a "manipulación de capas" y lo segundo es que busques efectos de transición con JavaScript. Esta parte es algo complicada, espero que encuentres lo que necesitas.

Etiquetas: formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:36.