Comunidad de diseño web y desarrollo en internet online

mostrar item por defecto al cargar el formulario

Citar            
MensajeEscrito el 07 May 2012 06:29 pm
hola tengo problemas para cargar item por defecto en un select

este es el codigo del select

Código PHP :

<select name="cantones" id="cantones"  onChange='this.form.submit()'> 
                <!--<option value='-1'>-Seleccione-</option>-->
                <?php
                if (!empty($provincias)){
                    $SQLconsulta_hija1="SELECT * FROM cantones WHERE relacion='$provincias'";
                    $consulta_hija1 = mysql_query($SQLconsulta_hija1, $link);
                    
                    if (mysql_num_rows($consulta_hija1) != 0){
                        While  ($registro_hija1=mysql_fetch_array($consulta_hija1)){
                            if ($cantones == $registro_hija1['id']){
                                echo '<option value="'.$registro_hija1["id"].'" selected="selected" >'.$registro_hija1['opcion'].'</option>';
                            }else{
                                echo '<option value="'.$registro_hija1['id'].'" >'.$registro_hija1['opcion'].'</option>';
                            }
                        }
                    }else{
                        echo "<option value=''>No hay registros para este Item</option>";
                    }
                }else{
                    echo "<option value='-1'>Seleccione-></option>";
                }
                ?>
            </select>

el problema que tiene este select es que muestra el item por defecto al hacer click en el select .. deberia mostrarlo al cargar el form
nose como hacer para mostrar el item por defecto al cargar el formulario .. ayuda porf.

Por angelo27

Claber

136 de clabLevel



 

firefox
Citar            
MensajeEscrito el 09 May 2012 10:26 am
tienes una demo de esto?

porque el código está bien como yo lo veo :S
Quizá sea cosa del navegador y no del código php...

por cierto, puedes optimizar eso:

Código PHP :


echo '<option value="'.$registro_hija1["id"].'"";
echo ($cantones == $registro_hija['id']) ? 'selected="selected"' : '';
echo '>'.$registro_hija1['opcion'].'</option>';


Creo que puede ponerse en el mismo echo pero no me acuerdo :P
Así te ahorras un if.

Por nax_hh

Claber

168 de clabLevel

1 tutorial

 

Reus

firefox
Citar            
MensajeEscrito el 09 May 2012 03:43 pm
que propiedad se desencadena cuando un select recibe el foco o hago click en el

Por angelo27

Claber

136 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 May 2012 04:58 pm
onfocus y onclick respectivamente

Código Javascript :

$(document).on('focus', callback);
$(document).on('click', callback);

Por nax_hh

Claber

168 de clabLevel

1 tutorial

 

Reus

chrome
Citar            
MensajeEscrito el 10 May 2012 05:34 pm
gracias por responder pero podria ser mas explicito porfa.

por ejemplo este es mi codigo::
lo que con signo de interrogacion es la parte que nose como programar , es decir como decirle al php que al momento de hacer click en el select haga lo que esta dentro del IF

Código PHP :

if (??????){
         echo "<select name=\"cantones\" style='width:100px' onChange=\"this.form.submit()\">\n"; 
         echo "<option value='-1'><-Seleccione un Item</option>\n";
 
         $SQLconsulta_h0="SELECT * FROM cantones WHERE relacion='$provincias'";
         $consulta_h0 = mysql_query($SQLconsulta_h0,$link) or die(mysql_error());
 
         While   ($registro_h0=mysql_fetch_assoc($consulta_h0)){
            if ($db_user["id_ct"] == $registro_h0['id']){                //$provincias
               echo "<option value=\"".$registro_h0['id']."\" selected>".$registro_h0['opcion']."</option>\n";
            } else {
               echo "<option value=\"".$registro_h0['id']."\">".$registro_h0['opcion']."</option>\n";
            }
         }
         echo "</select>\n\n";
}else{ 
         ECHO "<select name='cantones' id='cantones'>";
         ECHO "<option value='1'>- Seleccione - </option>";
         
            $a="select * from cantones";
            $aa=mysql_query($a,$link);
            while($db_curso=mysql_fetch_array($aa)){
               if($db_user["id_ct"] == $db_curso["id"]){
               echo '<option value="'.$db_curso["id"].'" selected="selected">'.$db_curso["opcion"].'</option>';
                  }else{
               echo '<option value="'.$db_curso["id"].'">'.$db_curso["opcion"].'</option>';
                  }   
            }
         
         ECHO "</select>";
}

Por angelo27

Claber

136 de clabLevel



 

firefox
Citar            
MensajeEscrito el 10 May 2012 08:32 pm
Hombre. PHP se ejecuta en el servidor, PHP no sabe ni puede saber dónde hizo clic o dejó de hacer clic el usuario. Se te ha estado diciendo que lo que quieres hacer lo tienes que hacer en JavaScript, no en PHP.

Por DriverOp

Claber

2510 de clabLevel



 

opera

 

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