Foros del Web » Programando para Internet » Javascript »

Recorrer checkbox y copiar a imput

Estas en el tema de Recorrer checkbox y copiar a imput en el foro de Javascript en Foros del Web. Estimados amigos: Gracias por su apoyo. Tengo un checkbox con el mismo nombre y que pueda deleccionar varios valores: <input type=checkbox name=tags[] value='1'> 1 <input ...
  #1 (permalink)  
Antiguo 11/05/2013, 06:37
 
Fecha de Ingreso: marzo-2003
Ubicación: Av. Grau 1190
Mensajes: 122
Antigüedad: 21 años, 9 meses
Puntos: 3
Exclamación Recorrer checkbox y copiar a imput

Estimados amigos:

Gracias por su apoyo.

Tengo un checkbox con el mismo nombre y que pueda deleccionar varios valores:

<input type=checkbox name=tags[] value='1'> 1
<input type=checkbox name=tags[] value='2'> 2
<input type=checkbox name=tags[] value='3'> 3
<input type=checkbox name=tags[] value='4'> 4

Quiero que al seleccionar uno o mas valores se copien en un input separado por comas.

<input type="text" name="destino1" />

Espero que me puedan ayudar.

Saludos
  #2 (permalink)  
Antiguo 11/05/2013, 07:41
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 8 meses
Puntos: 1284
Respuesta: Recorrer checkbox y copiar a imput

Hola:

Sobre el código, te recomiendo que entrecomilles los atributos.

Hay una colección DOM que obtienes con document.getElementsByName... y desde el formulario... elForm["tags[]"] referenciará a esos controles. Deberías recorrerlos con un bucle...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 15/05/2013, 15:24
 
Fecha de Ingreso: marzo-2003
Ubicación: Av. Grau 1190
Mensajes: 122
Antigüedad: 21 años, 9 meses
Puntos: 3
Respuesta: Recorrer checkbox y copiar a imput

Estimado Caricatos:

Gracias por tu respuesta. Estuve revisando tu sugerencia y llegue q este punto.-
================
<script type="text/javascript">
function copiar(){
var elementos = document.getElementsByName("opcion1");
texto = "";
for (x=0;x<elementos.length;x++){
texto = texto + elementos[x].value + ", "; }

document.forms['miformulario']['destinook'].value = texto

}
</script>

<form id="miformulario" action="#">
<input type="checkbox" name="opcion1" value="1" id="opcion1" onClick="copiar()">
<input type="checkbox" name="opcion1" value="2" id="opcion2" onClick="copiar()">
<input type="checkbox" name="opcion1" value="3" id="opcion3" onClick="copiar()">
<input type="checkbox" name="opcion1" value="4" id="opcion4" onClick="copiar()">

<input type="text" name="destinook" />

</form>

============

Cuando selecciono un check recorre todo; solo necesito que se copie los que selecciono y se copie en el input separado por una (,). Ademas si deselecciono un check tambien se quita del input.

A ver si me puene ayudar.

saludos
  #4 (permalink)  
Antiguo 15/05/2013, 15:36
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 8 meses
Puntos: 1284
Respuesta: Recorrer checkbox y copiar a imput

Hola:

Con pocos toques llegarás al éxito ...

Antes de la concatenación deberías consultar el estado "checked" del checkbox; y sobre la concatenación, te comento un truco... en vez de encadenar el resultado, yo suelo usar un array inicialmente vacío, añadiendo items con el método push; y al terminar el bucle con el arreglo de los elementos checkeados, vuelco el array aplicándole el método split...

Sigue comentándonos tus progresos.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 16/05/2013, 08:38
 
Fecha de Ingreso: marzo-2003
Ubicación: Av. Grau 1190
Mensajes: 122
Antigüedad: 21 años, 9 meses
Puntos: 3
Respuesta: Recorrer checkbox y copiar a imput

hola Caricatos:

hoy revise bien el codigo e hize algunos cambios y pude resolverlo.
============
<script type="text/javascript">
function copiar(){
var elementos = document.getElementsByName("opcion1");

texto = "";
for (x=0;x<elementos.length;x++){
if (elementos[x].checked==true) {
texto = texto + elementos[x].value + ", ";
}
}
document.forms['miformulario']['destinook'].value = texto

}
</script>


<form id="miformulario" action="#">
<input type="checkbox" name="opcion1" value="1" id="opcion1" onClick="copiar()">
<input type="checkbox" name="opcion1" value="2" id="opcion2" onClick="copiar()">
<input type="checkbox" name="opcion1" value="3" id="opcion3" onClick="copiar()">
<input type="checkbox" name="opcion1" value="4" id="opcion4" onClick="copiar()">

<input type="text" name="destinook" />

</form>
================

funciona muy bien, solo un detalle mas:

Cuando selecciono uno o mas, por ejemplo. 1, 2, 4, ... al final me queda la (,) y el espacio. como puedo eliminarlo? he usado el trim pero nada.

Espero q me puedas ayudar.

Saludos
  #6 (permalink)  
Antiguo 16/05/2013, 10:55
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 8 meses
Puntos: 1284
Respuesta: Recorrer checkbox y copiar a imput

Hola:

¿Qué lástima que no te hayas enterado de mi truco...

texto = [];// en vez de texto = "";
// ...
texto.push(elementos[x].value);// --> texto = texto + elementos[x].value + ", ";
// ... y para terminar:
document.forms['miformulario']['destinook'].value = texto.split(",");

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo

Etiquetas: chechbox, 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 09:17.