Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Concatenar y eliminar texto

Estas en el tema de Concatenar y eliminar texto en el foro de Frameworks JS en Foros del Web. Buenas! Tengo el siguiente código y una duda que me trae loco: Cita: <div class="checks"> <span id="ch1"></span> <span id="ch2"></span> <span id="ch3"></span> <span id="ch4"></span> </div> <input ...
  #1 (permalink)  
Antiguo 26/04/2012, 11:00
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 17 años, 2 meses
Puntos: 1
Concatenar y eliminar texto

Buenas!

Tengo el siguiente código y una duda que me trae loco:

Cita:
<div class="checks">

<span id="ch1"></span>
<span id="ch2"></span>
<span id="ch3"></span>
<span id="ch4"></span>

</div>

<input type="hidden" id="checkBot" value="" />
Los span representan un campo checkbox (Por diseño en el navegador simulan un campo checkbox) y necesito enviar los marcados mediante ese campo oculto.

Me gustaría saber de qué manera puedo ir guardando en el campo oculto los valores de los IDs del span correspondiente al clicar sobre él y si vuelvo a pulsar sobre el span, eliminar ese valor del mismo campo oculto.

Gracias!

Última edición por suudobal; 27/04/2012 a las 04:08
  #2 (permalink)  
Antiguo 27/04/2012, 04:10
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 17 años, 2 meses
Puntos: 1
Respuesta: Concatenar y eliminar texto

¿Nadie me puede echar una mano u orientar con este dilema? :(
  #3 (permalink)  
Antiguo 27/04/2012, 14:48
Avatar de Dafonz  
Fecha de Ingreso: octubre-2009
Mensajes: 127
Antigüedad: 15 años, 1 mes
Puntos: 36
Respuesta: Concatenar y eliminar texto

Código Javascript:
Ver original
  1. $('.checks span').click(function() {
  2.     var activos = new Array();
  3.     $('.checks span').each(function(ele,ind){
  4.         if($(ele).is(':checked')) activos.push($(ele).attr('id'));
  5.     });
  6.     $('#checkBot').val(activos.join());
  7. });

Cuando se pulsa un span ve cuales estan activos y los pone en un array y al ultimo los pone como valor en el input hidden de forma:
1,2,3

Edit. no me habia fijado que no eran checkboxes solo "simulaban", cual es el cambio que hacen al estar "checked"? si se les agrega alguna clase o algo con eso en vez de:
if($(ele).is(':checked')) activos.push($(ele).attr('id')); puedes utilizar .hasClass, o al menos si pudieras decir como se comportan esos "checkboxes"
  #4 (permalink)  
Antiguo 03/05/2012, 08:18
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 17 años, 2 meses
Puntos: 1
Respuesta: Concatenar y eliminar texto

Creo que con eso puedo hacer algo, muchas gracias Dafonz!
  #5 (permalink)  
Antiguo 03/05/2012, 08:40
 
Fecha de Ingreso: junio-2009
Mensajes: 128
Antigüedad: 15 años, 5 meses
Puntos: 17
Respuesta: Concatenar y eliminar texto

Hace poco tube que hacer algo parecido, por cuestion de diseño no quedaban bien los checkbox por defecto (como sera posible que hoy en dia sigan si poder maquetarse con css, ni siquiera css3 ).

Rebuscando encontre por ahi una solucion que me parecio bastante interesante, y que quiero compartir contigo, pues quizas te sirva tanto como a mi (o a cualquier otro que llege hasta aqui)

basicamente la idea es jugar con los propios checkbox y no con otros elementos.

A cada checkbox le pones un div con clase que tenga el background-image para incluirle el diseño que quieras

Luego añades al checkbox display:block con un tamaño igual que del contenedor (para que lo ocupe todo) y le pones con javascript opacidad a 0 (el mismo hide() de jquery te puede servir).

Por ultimo con javascript cada vez que hagas click al checkbox, cambias la clase del contenedor que lo contiene. Con esta otra clase, lo que harias seria cambiar el background-image, por otra que sea con el diseño del checkbox marcado. (te recomiendo un sprite para esto).

Quizas sea un poquito mas laborio que la otra forma, pero usas directamente los checkbox, por lo tanto a la hora de trabajar con ellos te sera mas comodo, ademas de que un usuario con javascript desactivado, podra seguir completando el formulario (por eso es importante que la opacidad se la añadas con javascript).

Espero que te sirva.
  #6 (permalink)  
Antiguo 09/05/2012, 01:55
 
Fecha de Ingreso: septiembre-2007
Mensajes: 106
Antigüedad: 17 años, 2 meses
Puntos: 1
Respuesta: Concatenar y eliminar texto

Interesante opción kike... muchas gracias por compartirlo! Veré qué puedo hacer jeje.

Un saludo

Etiquetas: jquery
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 14:00.