Foros del Web » Programando para Internet » PHP »

Select que no muestra la opcion seleccionada cuando se actualiza

Estas en el tema de Select que no muestra la opcion seleccionada cuando se actualiza en el foro de PHP en Foros del Web. bueno mi problema es que cuando realizo un recarga en un select no me aparece la opcion seleccionada cuando se acutualiza. Como pudo hacer para ...
  #1 (permalink)  
Antiguo 24/01/2008, 08:53
 
Fecha de Ingreso: julio-2007
Ubicación: Panamá
Mensajes: 16
Antigüedad: 16 años, 8 meses
Puntos: 0
Select que no muestra la opcion seleccionada cuando se actualiza

bueno mi problema es que cuando realizo un recarga en un select no me aparece la opcion seleccionada cuando se acutualiza. Como pudo hacer para que me aparesca la opcion???
este es el codigo

<SELECT name="NomDiplomado" onChange="MM_jumpMenu('parent',this,0)">
<OPTION> </OPTION>
<?php
include "conexion.php";
$link=conexion();
$result = mysql_query("SELECT NomDiplomado, IDDiplomado FROM diplomado where DiplomadoActivo=1", $link);
while ($row = mysql_fetch_row($result))
{
echo "<option name=diplomado id='encuesta.php?NomDiplomado=$row[0]&IDDiplomado=$row[1]' value=$row[0]>". htmlentities($row[0])."</option>";
}
?>
</select>



y este es el script

<script language="JavaScript" type="text/JavaScript">
<!--

function MM_jumpMenu(targ,selObj,restore)
{
eval(targ+".location='"+selObj.options[selObj.selectedIndex].id+"'");
if (restore)
selObj.selectedIndex=10;
}
//-->
</script>



no se si es porque estoy llenando las opciones con datos de la BD
Alguin me podria ayudar...
Gracias de antemano
  #2 (permalink)  
Antiguo 24/01/2008, 09:00
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Re: Select que no muestra la opcion seleccionada cuando se actualiza

<OPTION> </OPTION> sale en blanco y no esta seleccionando nada... cuando algo esta seleccionado debe decir

<option selected="selected">Opcion</option>
  #3 (permalink)  
Antiguo 24/01/2008, 09:03
Avatar de eddwinpaz  
Fecha de Ingreso: noviembre-2007
Ubicación: Merida , Venezuela
Mensajes: 1.066
Antigüedad: 16 años, 5 meses
Puntos: 25
Re: Select que no muestra la opcion seleccionada cuando se actualiza

bueno yo lo haria de la siguiente manera...
Código PHP:
function genero($nombre_select){
 
 
$mysql = new MYSQL;
 
$fw = new framework;
 if(
$mysql->connect() == true){
   
     
$result $fw->consult('SELECT estados FROM paises ORDER BY id');
     
    
     
//  print_r($row);
       // Voy imprimiendo el primer select compuesto 
    
echo "<select name='".$nombre_select."' id='".$nombre_select."'>";
    echo 
"<option></option>";
    while(
$row=mysql_fetch_array($result))
    {
        echo 
"<option value='".$row['0']."'>".$row['0']."</option>";
    }
    echo 
"</select>";
}
  return;
    } 
  #4 (permalink)  
Antiguo 24/01/2008, 09:48
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 18 años, 8 meses
Puntos: 638
Re: Select que no muestra la opcion seleccionada cuando se actualiza

hola. para lo que quieres a mi me va muy bien este codiguillo de javascript:
Código PHP:
<script language=javascript>
  if (document.forms.length)
    NomDiplomadoElem = document.forms[document.forms.length - 1]['NomDiplomado']
  else
    NomDiplomadoElem = document.all ? document.all['NomDiplomado'] : document.getElementById('NomDiplomado');

  if (NomDiplomadoElem) {
    NomDiplomadoElem.value = '<?php echo $row['id']; ?>';
    if (NomDiplomadoElem.selectedIndex == -1)
      NomDiplomadoElem.selectedIndex = 0;
  }
</script>
solo tienes que adaptar esta linia: <?php echo $row['id']; ?>, aqui pones el parametro que pasas a la consulta, yo normalmente paso el id del registro.

saludos y suerte
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
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 12:38.