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

pasar variables dinamicas

Estas en el tema de pasar variables dinamicas en el foro de Frameworks JS en Foros del Web. hola , tengo un problema. En un textbox "fecha" guardo un valor que deseo pasarlo por ajax. Pero este textbox lo genero tantas veces para ...
  #1 (permalink)  
Antiguo 13/07/2009, 13:16
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
pasar variables dinamicas

hola , tengo un problema. En un textbox "fecha" guardo un valor que deseo pasarlo por ajax. Pero este textbox lo genero tantas veces para completar un calendario. Eso significa que en cada celda hay un textbox que se llama "fecha" y el problema que al pasarlo por el ajax, me sale "undefined" porque no sabe que valor paso.

Mi idea fue generar un numero diferente para cada celda y concatenarlo no el nombre asi:

<input name="fecha<?php echo $random; ?>" type="text" value="<?php echo date("H:i", $timeInicio); ?>" />

Pero no se como pasar esos nombres diferentes nombres a mi funcion ajax

Código:
function muestraform(){
	var c = document.getElementById('muestra_form');
	var fecha = document.frmfecha.fecha.value;

	ajax=nuevoAjax();
	c.innerHTML = '<img src="../indicator.gif" width="16" height="16" align="absmiddle">';
	ajax.open("POST", "citas.php",true);
	ajax.onreadystatechange=function(){
		if (ajax.readyState==4) {
			c.innerHTML = ajax.responseText
		}
	}
	ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	ajax.send("fecha="+fecha+"&control=enviado");
}
como haria para saber que textbox estoy llamando?
__________________
Quitenme la vida pero no la bebida.
  #2 (permalink)  
Antiguo 13/07/2009, 13:47
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: pasar variables dinamicas

Usa document.getElementsByTagName, o getElementsByName para rescatar todos tus inputs, luego los concatenas y los envias por AJAX.

Saludos.
  #3 (permalink)  
Antiguo 13/07/2009, 14:12
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: pasar variables dinamicas

hola, gracias por responder. Disculpe, me podria dar un ejemplo para usar ese comando? el unico input que tengo es ese textbox llamado "fecha".
Vi que se usa con el .length para preguntar cuantos elementos hay....Como usar esto? ya que ejecuto la funcion ajax en el evento onclick de la celda donde se encuentra el textbox y quisiera que en la funcion ajax reconoza cual textbox es el que quiero pasar el valor. Epero su respuesta.

Probe con esto.... pero ahora me devuelve vacio:

Código:
function muestraform(){
	var c = document.getElementById('muestra_form');
	//var fecha = document.frmfecha.fecha.value;
	var valores = '';
	var campos = document.getElementsByTagName('fecha')
	for(var m = 0; m < campos.length; m++){
		tipo = campos[m].getAttribute('type');
		if(tipo.toLowerCase() == 'text') valores += campos[m].getAttribute('value');
	}

	ajax=nuevoAjax();
	c.innerHTML = '<img src="http://www.forosdelweb.com/f77/indicator.gif" width="16" height="16" align="absmiddle">';
	ajax.open("POST", "citas.php",true);
	ajax.onreadystatechange=function(){
		if (ajax.readyState==4) {
			c.innerHTML = ajax.responseText
		}
	}
	ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	ajax.send("valores="+valores+"&control=enviado");
}
__________________
Quitenme la vida pero no la bebida.

Última edición por cesarpunk; 13/07/2009 a las 14:48
  #4 (permalink)  
Antiguo 13/07/2009, 15:11
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: pasar variables dinamicas

Hola

Con permiso GatorV

Estás cogiendo todos los elementos cuya etiqueta es input

var campos = document.getElementsByTagName('INPUT')

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #5 (permalink)  
Antiguo 13/07/2009, 15:18
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: pasar variables dinamicas

mmmm gracias.... pero ahora me recoge todos los valores al presionar una celda... lo que quiero es capturar solo el valor que esta en una celda... es posible eso?
__________________
Quitenme la vida pero no la bebida.
  #6 (permalink)  
Antiguo 13/07/2009, 19:40
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: pasar variables dinamicas

En tu for() comprueba si el name es igual a fecha, y entonces obtienes el valor.

Saludos.
  #7 (permalink)  
Antiguo 14/07/2009, 10:17
Avatar de cesarpunk  
Fecha de Ingreso: enero-2008
Ubicación: Lima
Mensajes: 943
Antigüedad: 16 años, 3 meses
Puntos: 9
Respuesta: pasar variables dinamicas

mmmm bueno gracias, si me funciono... pero no sabia que con el metodo POST fuera un poquito complicado... ya que intente con el metodo GET y fue mucho mas sencillo

saludos
__________________
Quitenme la vida pero no la bebida.
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 05:20.