 
			
				26/04/2009, 22:51
			
			
			     |  
        |     |    |    Fecha de Ingreso: abril-2009  
						Mensajes: 2
					  Antigüedad: 16 años, 6 meses Puntos: 0     |        |  
  |      Respuesta: Valores de combos        Hola, si estas usando un bucle (for) para mostrar todos los registros puedes puedes hacer lo siguiente:   
<script type="javascript"> 
function Guardar(dato) 
{ 
    var variable = document.getElementById('declarado'+dato); 
    valor = variable.options[variable.selectedIndex].text; 
    document.getElementById('campo1').value=valor; 
}   
// Yo te recomendaría algo asi mejor 
function Guardar2(valor)  
{ 
    document.getElementById('campo1').value=valor; 
} 
</script>   
<? 
// $numero es la cantidad máxima de registros que vas a mostrar 
for($i=0; $i<$numero; $i++) 
{ 
?> 
<select name="declarado<?=$i?>" id="declarado<?=$i?>" onchange="Guardar(<?=$i?>)"> 
    <option value="<?php echo $uno;?>" selected><?php echo $uno;?></option> 
    <option value="<?php echo $dos;?>"><?php echo $dos;?></option> 
    <option value="<?php echo $tres;?>"><?php echo $tres;?></option> 
</select>   
// Si usas "Guardar2" sería: 
<select name="declarado<?=$i?>" id="declarado<?=$i?>" onchange="Guardar2(this.value)"> 
    <option value="<?php echo $uno;?>" selected><?php echo $uno;?></option> 
    <option value="<?php echo $dos;?>"><?php echo $dos;?></option> 
    <option value="<?php echo $tres;?>"><?php echo $tres;?></option> 
</select>     
El resto de tu código quedaría igual: 
<?php 
    echo "<form name='form2' action ='guardado.php' method='post'>\n"; 
    echo "<input type='hidden' name='campo1' value='Guardar();'> \n";  
    echo "<td><input type='submit' name='modifico' value='Modificar'/></td>\n";  
?>   
Por cierto, ahora te sale a veces "Guardar();" porque es el valor "inicial" que le haz puesto al campo oculto que luego imprimes... si le quitas lo que te marqué con rojo no le pones ningun valor inicial a ese campo.   
Saludos 
AZW           |