Comunidad de diseño web y desarrollo en internet online

problema para mostrar el item por defecto en el select hijo

Citar            
MensajeEscrito el 07 May 2012 07:49 pm
hola
un select dependiente es aquel que depende de un select anterior para llenar su contenido estos select pueden ser de 2 o mas y se nombran como select padre y select hijo .

el problema que tengo es en el select hijo es decir
COMO MOSTRAR EL ITEM POR DEFECTO EN EL SELECT HIJO


Código PHP :


<tr>
        <td style="color:#EA1D24" width="40%" align="right" nowrap="nowrap">Sector<span class="campo_obligatorio">*</span></td>
        <td>
            <select name='sector' style='width:70%' onChange='this.form.submit()'> <!--onChange='this.form.submit()'-->
            <option value="-1">-Seleccione-</option>
                    <?php
                        $SQLconsulta_padre="SELECT * FROM sectores";
                        $consulta_padre = mysql_query($SQLconsulta_padre,$link);
                        
                        while($registro_padre=mysql_fetch_array($consulta_padre)){

                            if ($db_user["id_s"] == $registro_padre['idsector']){
                                echo "<option value=".$registro_padre['idsector']." selected>".$registro_padre['nom_corto']."</option>";
                            }else{
                                echo "<option value=".$registro_padre['idsector'].">".$registro_padre['nom_corto']."</option>";
                            }
                        }
                    ?>
            </select>
        </td>
     </tr>
    <tr>
        <td style="color:#EA1D24" width="21%" align="right" nowrap="nowrap">Sub-Sector<span class="campo_obligatorio">*</span></td>
        <td>
        <select name='subsector' id='subsector' style='width:90%'>
         <option value="-1">-Seleccione-</option>
        <?php
               
                 $SQLconsulta_hija="SELECT * FROM subsectores WHERE relacion='$sector'";
                $consulta_hija = mysql_query($SQLconsulta_hija, $link);
      
                if (mysql_num_rows($consulta_hija) != 0){ //si el hijo tiene sector
                    While   ($registro_hija=mysql_fetch_array($consulta_hija)){
                        
                            echo '<option value="'.$registro_hija["id"].'">'.$registro_hija["nombre"].'</option>';    
                    }
                }else{
                        echo "<option value=''> No hay registros para este Item </option>";
                }
            ?>
            </select>
        </td>
    </tr>

Por angelo27

Claber

136 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 May 2012 11:14 pm
Si en el select hijo tienes una sola salida de la db no habria problema y no creo que tu pregunta apunte a eso pues bastaria con agregar el atributo selected al select hijo. Pero como creo que tendras varios registros para el select hijo la unica forma que veo es validando cual registro es el default y si corresponde añadir el echo "selected".

Espero que te sirva-
Saludos

Por nethost_cl

36 de clabLevel



Genero:Masculino  

CHILE

chrome
Citar            
MensajeEscrito el 08 May 2012 04:12 am
entonces qu ele falta o que esta demas en el codigo

Por angelo27

Claber

136 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 May 2012 04:21 am

Código :

if (mysql_num_rows($consulta_hija) != 0)
{ //si el hijo tiene sector
    While   ($registro_hija=mysql_fetch_array($consulta_hija))
    {
          echo '<option value="'.$registro_hija["id"].'"
           if ($registro_hija["id"] == "es mi registro por defecto")
           {
                echo ' selected';
            }
          echo '>'.$registro_hija["nombre"].'</option>';    
     }
 }
else
{
    echo "<option value=''> No hay registros para este Item </option>";


Haces la comprobacion si el registro hijo es el que quieres por default entonces que escriba "selected"

Saludos

Por nethost_cl

36 de clabLevel



Genero:Masculino  

CHILE

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.