Foros del Web » Programando para Internet » Javascript »

Consulta como concatenar elementos

Estas en el tema de Consulta como concatenar elementos en el foro de Javascript en Foros del Web. Hola buenas tardes, les hago una consulta ultra basica pero que no puedo descubrir como hacerlo aun. si tengo lo siguiente por ejemplo: Código PHP: ...
  #1 (permalink)  
Antiguo 18/12/2012, 13:16
 
Fecha de Ingreso: enero-2011
Mensajes: 41
Antigüedad: 13 años, 11 meses
Puntos: 0
Consulta como concatenar elementos

Hola buenas tardes, les hago una consulta ultra basica pero que no puedo descubrir como hacerlo aun.

si tengo lo siguiente por ejemplo:
Código PHP:
// un elemento de un form por ejemplo con el id = campo
alert(document.getElementById('campo').chk_1.checked); 
En este caso estoy obteniendo el estado chacked del checkbox de un form. Pero si el nombre id del elemento es dinamico, es decir lo siguiente:

Código PHP:
id 10;
alert(document.getElementById('campo').chk_+id.checked);
//dodne id remplaza parte de chk_+id para poder encontrarlo, siendo que este ahora pasa a ser 'chk_10'. 
yo le puse un +, pero no se como hacerlo en realidad, como concateno el elemento con el numero dinamicamente proporcionado en la funcion para poder usarlo??

creo que se entiende.
gracias desde ya!
  #2 (permalink)  
Antiguo 18/12/2012, 14:32
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 16 años, 6 meses
Puntos: 1012
Respuesta: Consulta como concatenar elementos

has de estar equivocado
Cita:
document.getElementById('campo').chk_1
no puede accesar a ningún elemento. "chk_1" no es un atributo del elemento "campo"

para concatenar, como bien haces, se usa el signo (+)
Cita:
document.getElementById('campo'+id).checked
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #3 (permalink)  
Antiguo 18/12/2012, 23:04
 
Fecha de Ingreso: enero-2011
Mensajes: 41
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Consulta como concatenar elementos

Gracias por responder!

En ese emeplo chk_1 es un elemento dentro de campo, campo es un formulario y chk_1 es el nombre de un checkbox que esta contenido en el, recuper la propiedad de esa manera.

la cuestion es que si quiero cambiar el nombre del elemento no se como hacerlo, por ejemplo asi:

Código PHP:
alert(id_elemento_1); //funciona ok 
Código PHP:
test 1;
alert(id_elemento_+test); //devuelve not defined 
gracias nuevamente!
  #4 (permalink)  
Antiguo 19/12/2012, 04:03
Avatar de rosonator  
Fecha de Ingreso: noviembre-2012
Ubicación: Bilbao
Mensajes: 49
Antigüedad: 12 años, 1 mes
Puntos: 7
Respuesta: Consulta como concatenar elementos

Las comillas de id_elemento, amigo:

alert(document.getElementById('campo').getElementB yId('chk_'+id).checked);

Última edición por rosonator; 19/12/2012 a las 04:11
  #5 (permalink)  
Antiguo 19/12/2012, 06:30
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 16 años, 6 meses
Puntos: 1012
Respuesta: Consulta como concatenar elementos

los formularios normalmente no tienen id, tienen name por aquello de validarlos. y los controles tampoco es necesario que tengan id, puedes usar un name como "array asociativo". entonces cambia el atributo id por el atributo name. de tal modo que para acceder a sus controles
Cita:
document.forms['campos'].elements[id].checked;
donde "id" es el indice (posición) que ocupa el control en el formulario
Cita:
function fnc(id) {
alert(document.forms['campo'].elements[id].ckeked);
}

<form name="campo">
<input type="checkbox" name="chk[]" value="1" />
<input type="checkbox" name="chk[]" value="2" />
<input type="botton" value="ckequear" onclick="fnc(0)" />
</form>
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #6 (permalink)  
Antiguo 19/12/2012, 20:19
 
Fecha de Ingreso: enero-2011
Mensajes: 41
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Consulta como concatenar elementos

Cita:
Iniciado por rosonator Ver Mensaje
Las comillas de id_elemento, amigo:

alert(document.getElementById('campo').getElementB yId('chk_'+id).checked);
Si hago esto:
alert(document.getElementById('campo').getElementB yId('chk_'+id).checked);

me da 'is null', no me toma el nombre del id.



IsaBelM: Te entiendo, pero ese formulario que estoy usando puedo cambiarle quizas algun elemento de lugar, agregarle o quitarle cosas, lo que me modificaria el valor de elements, como puedo hacer para pasarle a la funcion el index del elemento con el que quiero trabajar??

en este momento lo tengo andando con IDs en cada elemento generado dinamicamente, llamo a la funcion de esta manera con php: llama('id_X', 'otro_x')

donde X es un numero generaldo, e ID_X es el ID del elemento que quiero modificar... todo bien ahi pero quiero aprender a hacerlo con index o de alguna manera que me permita no tener que ponerle ID a las cosas en todo momento!!

gracias!
  #7 (permalink)  
Antiguo 19/12/2012, 23:28
Avatar de JhonErick  
Fecha de Ingreso: noviembre-2012
Ubicación: colombia
Mensajes: 38
Antigüedad: 12 años, 1 mes
Puntos: 3
Respuesta: Consulta como concatenar elementos

ummm bueno creo que te estas ahogando en un vaso de agua mi estimado amigo si el campo check es dinámico por que no se lo concatenas con el id para que lo puedas acceder directamente con javascript
Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.         // var prueba1="cadena"
  3.         // alert(eval("prueba"+1));
  4.  
  5.         var cont=1;
  6.         function alertaChecked(){
  7.           alert(document.getElementById('check'+cont).checked);
  8.           if(cont==1){cont=2;}
  9.           else {cont=1;}
  10.         }
  11.     </script>  
  12.  
  13.    
  14.   <input type="checkbox"  id="check1">
  15.   <input type="checkbox"  id="check2">
  16.   <input type="button" value="informa de su propiedad checked" onclick="alertaChecked()">

este es un ejemplo bastante ordinario de lo que debes hacer si es que te estoy entendiendo jejejeje

lo otro que vi por hay es que tratabas de concatenar una variable dentro de un alert bueno para eso necesitarías de la función eval aun que concuerdo con muchos que su uso debe de evitarse el lo mas posible ps hay te dejo el dato

Código Javascript:
Ver original
  1. var prueba1="cadena"
  2.   alert(eval("prueba"+1));

si das alert sin eval te imprime prueba1 pero si le das eval "evaluas" la cadena y te muestra cadena.

espero haber sido de ayuda Saludos

Última edición por JhonErick; 19/12/2012 a las 23:36
  #8 (permalink)  
Antiguo 21/12/2012, 10:00
 
Fecha de Ingreso: enero-2011
Mensajes: 41
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Consulta como concatenar elementos

Gracias JhonErick! me sirvio tu ayuda, si ahora lo de rescatar los campos por ID es lo que estoy haciendo actualmente, voy a evaluar lo de EVAL quizas me sirva para lo que estoy haciendo!

muchas gracias!.

Etiquetas: concatenar, elementos, funcion
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:46.