Foros del Web » Programando para Internet » Javascript »

consulta 2 input dinámico

Estas en el tema de consulta 2 input dinámico en el foro de Javascript en Foros del Web. Hola tengo un javascript que genera un input para cargar archivos pero lo que nesecito es ademas de agregar un archivo que tambien cree junto ...
  #1 (permalink)  
Antiguo 14/08/2009, 07:12
Avatar de ale80262  
Fecha de Ingreso: junio-2008
Mensajes: 66
Antigüedad: 16 años, 5 meses
Puntos: 0
consulta 2 input dinámico

Hola tengo un javascript que genera un input para cargar archivos pero lo que nesecito es ademas de agregar un archivo que tambien cree junto con el input del archivo un input de texto para una descripcion o titulo

mi codigo es

Código HTML:
<script type="text/javascript">

var numero = 0;

// Funciones comunes
c= function (tag) { // Crea un elemento
   return document.createElement(tag);
}

d = function (id) { // Retorna un elemento en base al id
   return document.getElementById(id);
}
e = function (evt) { // Retorna el evento
   return (!evt) ? event : evt;
}
f = function (evt) { // Retorna el objeto que genera el evento
   return evt.srcElement ?  evt.srcElement : evt.target;
}

addField = function () {
   container = d('subir');
   
   span = c('SPAN');
   span.className = 'subir';
   span.id = 'subir' + (++numero);

   
   field = c('INPUT');   
   field.name = 'archivos[]';
   field.type = 'file';
   
   
   a = c('A');
   a.name = span.id;
   a.href = '#subir';
   a.onclick = removeField;
   a.innerHTML = 'Quitar';
   
 

   span.appendChild(field);
   span.appendChild(a);
   container.appendChild(span);
}
removeField = function (evt) {
   lnk = f(e(evt));
   span = d(lnk.name);
   span.parentNode.removeChild(span);
}




</script> 
he intentado pero no lo consigo todvia si alguin me pued ehechar un mano desde ya mil gracias
  #2 (permalink)  
Antiguo 14/08/2009, 09:37
Avatar de goyo_  
Fecha de Ingreso: agosto-2009
Mensajes: 91
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: consulta 2 input dinámico

No entiendo exactamente tu inquietud, el codigo parece funcionar perfectamente, unicamente agregue lo siguiente:

Código javascript:
Ver original
  1. field2 = c('INPUT');  
  2. field2.name = 'descripcion';
  3. field2.type = 'text';

Codigo total:

Código HTML:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Untitled Document</title>
</head>

<body>
<div id="subir"></div>

<script type="text/javascript">

var numero = 0;

// Funciones comunes
c= function (tag) { // Crea un elemento
   return document.createElement(tag);
}

d = function (id) { // Retorna un elemento en base al id
   return document.getElementById(id);
}
e = function (evt) { // Retorna el evento
   return (!evt) ? event : evt;
}
f = function (evt) { // Retorna el objeto que genera el evento
   return evt.srcElement ?  evt.srcElement : evt.target;
}

addField = function () {
   container = d('subir');
   
   span = c('SPAN');
   span.className = 'subir';
   span.id = 'subir' + (++numero);

   
   field = c('INPUT');   
   field.name = 'archivos[]';
   field.type = 'file';
   
   field2 = c('INPUT');   
   field2.name = 'descripcion';
   field2.type = 'text';
   
   
   a = c('A');
   a.name = span.id;
   a.href = '#subir';
   a.onclick = removeField;
   a.innerHTML = 'Quitar';
   
 

   span.appendChild(field);
   span.appendChild(field2);
   span.appendChild(a);
   container.appendChild(span);
}
removeField = function (evt) {
   lnk = f(e(evt));
   span = d(lnk.name);
   span.parentNode.removeChild(span);
}


addField();

</script>
</body>
</html> 
  #3 (permalink)  
Antiguo 14/08/2009, 12:23
Avatar de ale80262  
Fecha de Ingreso: junio-2008
Mensajes: 66
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: consulta 2 input dinámico

muchas gracias lo habia probrado asi pero mi error estaba en que yo lo ponia

Código HTML:
span.appendChild(field, field2);
y es como me pasaste correctamente

Código HTML:
span.appendChild(field);
span.appendChild(field2);
muchas gracias de vuelta, saludos
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 18:42.