Foros del Web » Programando para Internet » Javascript »

Borrar input y div

Estas en el tema de Borrar input y div en el foro de Javascript en Foros del Web. Hola gente, Estoy realizando una web, de encuestas, por medio de un formulario creo la pregunta y la mando a una nueva pagina en la ...
  #1 (permalink)  
Antiguo 11/05/2010, 14:33
 
Fecha de Ingreso: mayo-2006
Mensajes: 154
Antigüedad: 18 años, 6 meses
Puntos: 0
Borrar input y div

Hola gente,

Estoy realizando una web, de encuestas, por medio de un formulario creo la pregunta y la mando a una nueva pagina en la con un autocompletado selecciono las posibles respuestas para esa pregunta.

Cada pregunta es un enlace que al hacer click genera un div con el texto de la respuesta y un input type="hidden" en un formulario.

El problema llega a la hora de querer borrar alguna respuesta, osea su div y su input.

Para crear la capa y el input cree esta funcion y me funcionan tanto en firefox como en explorer.

Código PHP:
     function anadir(respuestaid){
      var 
capa document.createElement('div');
      var 
idCapa 'capa'+id
      
capa.height '10';//ALTO DE LA CAPA
      
capa.id idCapa;//IDENTIFICADOR QUE LE DAMOS A LA CAPA
      
capa.style.border='1px solid #ff0000';
      
capa.innerHTML respuesta "<a href='#' onclick='borrar("+idCapa+","+id+");' align='right'>Borrar</a>";
      var 
inputId document.createElement('input');
      
inputId.type 'hidden';//TIPO DE INPUT QUE CREAMOS
      
inputId.size '50';//TAMAÑO DEL INPUT
      
inputId.name id;//NOMBRE DEL INPUT DENTRO DEL FORMULARIO
      
inputId.value id;//VALOR QUE INSERTAMOS EN EL INPUT TEXT
      
inputId.id id;//IDENTIFICADOR DE LA CAPA
      
document.FormValidar.appendChild(capa);//AÑADIMOS LA CAPA AL FORMULARIO
      
document.FormValidar.appendChild(inputId);//AÑADIMOS EL NUEVO INPUT
    
}

     function 
desactivar(id){
      var 
miCapa 'ln'+id;//GUARDAMOS EL IDENTIFICADOR DEL DIV A DESACTIVAR
      
var alturaDivalturaListadoaltoFinal;
      
alturaDiv=document.getElementById(id).offsetHeight;
      
alturaListado=document.getElementById("listado").offsetHeight;
      
altoFinal=alturaListado-alturaDiv;
      
document.getElementById(miCapa).style.height='0px';
      
document.getElementById(miCapa).style.visibility='hidden';
      
document.getElementById(miCapa).style.display='none';
     
     
    } 
Eso me lo hace bien, lo malo es que en la capa que creo le paso de contenido un enlace que llama a la funcion borrar en la que le paso el id de la capa y el id del input, pero estos solo me los borran en internet explorer

Código PHP:
function borrar(idCapaidInput){
     
//FUNCIONA EN INTERNET EXPLORER 6
     
document.FormValidar.removeChild(idCapa);
     var 
hijoInputpadreInput
     hijoInput 
document.getElementById(idInput);
     
padreInput hijoInput.parentNode;
     
padreInput.removeChild(hijoInput);
     
     } 
No se, algo estoy haciendo mal seguro, pero me parece raro que en explorer si funcione y en firefox no.

Espero que alguna persona, casi cualquiera pueda ayudarme ya que mis conocimientos sobre javascript son basicos.


Saludos y gracias de antemano
  #2 (permalink)  
Antiguo 11/05/2010, 14:35
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 6 meses
Puntos: 839
Respuesta: Borrar input y div

¿Te da algún error? ¿Has probado con document.FormValidar.removeChild(document.getEleme ntById(idCapa));?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 11/05/2010, 14:49
 
Fecha de Ingreso: mayo-2006
Mensajes: 154
Antigüedad: 18 años, 6 meses
Puntos: 0
Respuesta: Borrar input y div

Hola David,

En explorer no me da ningun error, en el firefox en consola de errores me ponia capaN undefined.


Probe en firefox el firebug qe te muestra los codigos fuentes y las capas e inputs qe se ivan creando tenian bien los id.


No de la forma que me dices no probe probe metiendo en una variable

Código PHP:
var miCapa 
miCapa 
document.getEleme ntById(idCapa);
document.FormValidar.removeChild(miCapa); 
De esa forma no iva, hay alguna diferencia con tu forma?.

Lo unico que nose muy bien como hacer es la llamada a la funcion borrar desde el enlace que creo, ya que tengo que concatenar dos variables y una de ellas es texto.



Saludos y gracias
  #4 (permalink)  
Antiguo 12/05/2010, 06:53
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 6 meses
Puntos: 839
Respuesta: Borrar input y div

Ya veo, lo que está mal es la llamada, las cadenas deben estar entre comillas:
Código Javascript:
Ver original
  1. borrar("idCapa", "id");
(Claro, concatenando los valores de las variables, pero manteniendo las comillas en el string, puedes escaparlas con la contrabarra \ si usas también comillas dobles para envolver el string completo)
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.

Etiquetas: borrar, input
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 08:01.