Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/06/2008, 04:41
Enea
 
Fecha de Ingreso: junio-2003
Mensajes: 744
Antigüedad: 20 años, 10 meses
Puntos: 0
onchange en select creado dinamicamente

Buenas...

Tengo un problemilla con el que estoy días ya... busco información por todo pero ninguna de las soluciones que he visto me ha ayudado y ya no se me ocurre que más probar.
Estoy generando filas con campos dinamicamente, un campo es un select y los demás son campos de texto normales.. vale.. hasta ahi me he apañado y me va bien, mi problema es que quiero ir más alla haciendo que cuando cambie el select realice una consulta a la bdd y enseñe un valor en otro de esos campos que esta generando dinamicamente... bueno, pues no tengo manera de conseguir identificar el campo ese que estoy generando para cargarle ahora cualquier cosa, un simple hola, da igual el que... He probado creo que de todo, pensaba que podía ser porque cuando hago el onchange del select aun no se ha creado ese campo y he intentado cambiarlo de posición, pornerlo antes del select pero tampoco me resultó, no sé.. igual es una tonteria pero me trae loca...
Ahi os paso el codigo del script, a ver si alguien me sabe dar alguna idea..

Muchas gracias de antemano!

Código:
<script type="text/javascript">
var n=0; 
function add() { 
  pepe = document.getElementById('tabla'); 
  n++; 
  fila = document.createElement('tr'); 
   
  titulo=new Array('concepto','descripcion',  'cantidad', 'precio', 'dto');
   
  for (i=0;i<5;i++) { 
  
	  celda = document.createElement('td'); 
	  fila.appendChild(celda); 
	  
	  switch (i) {
		case 0:
		   code=document.createElement("SELECT");
		   code.setAttribute("size","1");
		   code.setAttribute("name",titulo[i]+"[]");
		   <? while($row_conceptos=mysql_fetch_array($sql_conceptos)) { 
				print "optioncode=document.createElement('option');";
				print "optioncode.innerHTML='".$row_conceptos['nombre']."';";
				print "optioncode.value='".$row_conceptos['id']."';";
				print "code.appendChild(optioncode);";
		   } ?>
  		   code.onchange = function() {
		   }		   
		   celda.appendChild(code);
		  break;
	  
	  	case 1:
	  	  	code=document.createElement('input'); 
	  		code.type='text'; 
	  		code.name=titulo[i]+"[]";
	  		code.size='15'; 
	  		celda.appendChild(code); 
	  		pepe.appendChild(fila); 
			break;
		
		case 2:
	  	  	code=document.createElement('input'); 
	  		code.type='text'; 
	  		code.name=titulo[i]+"[]";
	  		code.size='2'; 
	  		celda.appendChild(code); 
	  		pepe.appendChild(fila); 
			break; 
		
		case 3:
	  	  	code=document.createElement('input'); 
	  		code.type='text'; 
	  		code.name=titulo[i]+"[]";
	  		code.size='2'; 
	  		celda.appendChild(code); 
	  		pepe.appendChild(fila); 
			break;
			
		case 4:
		  	code=document.createElement('input'); 
	  		code.type='text'; 
	  		code.name=titulo[i]+"[]";
	  		code.size='2'; 
			celda.appendChild(code); 
	  		pepe.appendChild(fila); 
			break;
		}
	}
} 
</script>
__________________
Ibisof | Saludos desde Eivissa !!! :p