Foros del Web » Programando para Internet » Javascript »

onchange, onClick

Estas en el tema de onchange, onClick en el foro de Javascript en Foros del Web. ¿Que se ejcuta antes?...
  #1 (permalink)  
Antiguo 22/04/2009, 07:48
 
Fecha de Ingreso: abril-2009
Mensajes: 34
Antigüedad: 15 años, 1 mes
Puntos: 1
onchange, onClick

¿Que se ejcuta antes?
  #2 (permalink)  
Antiguo 22/04/2009, 09:19
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 16 años, 6 meses
Puntos: 75
Respuesta: onchange, onClick

no entiendo? como que que se ejecuta antes?

son dos eventos muy diferentes, si lo que quieres decir es "que es mas rapido de ejecutarse" pues depende, si es una caja de texto pues lo mas facil es un onChange y si es un boton pues no se si le sirva el evento onChange pero le caeria muy bien el onClick
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #3 (permalink)  
Antiguo 22/04/2009, 09:32
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Respuesta: onchange, onClick

Hola:

Siempre se ejecuta "primero" el primero, pero por ejemplo, si el cambio se realiza desde el teclado, nunca va a saltar el evento click, y si un click no provoca ningún cambio, nunca saltará el onchange (por ejemplo radios...)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 23/04/2009, 01:37
 
Fecha de Ingreso: abril-2009
Mensajes: 34
Antigüedad: 15 años, 1 mes
Puntos: 1
Respuesta: onchange, onClick

Me refiero a que tengo un select como este con las siguientes funciones,


Código PHP:
function fncActualizar(){ 
             var f = document.forms['fomulario'];
            var empresa1 = document.getElementById("empresa").value;
            window.location.href="Index.php?dato="+empresa1;
            
            };
            function ordena(){
                items=document.getElementById("empresa").options;
                opciones=new Array();
                for(a=0;a<items.length;a++) 
                opciones[a]=new Array(items[a].value, items[a].text); 
                opciones.sort();    
                for(a=0;a<items.length;a++) {        //sobrescribimos las opciones originales a las ordenadas 
                items[a].value=opciones[a][0]; 
                items[a].text=opciones[a][1]; 
                    } 
            }; 

tr><td width="25%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Empresa:</td><td><select name="empresa" id="empresa" onClick ="ordena()"  onchange="fncActualizar()" > 
                        <?php
                            $archivo 
fopen("D:\Desarrollo_Web\adm16.ini","r");
                            
$num_lineas 0
                            
$lista_user_password = array();
                            
$lista_empresa = array();
                            
$lista_detalle2 = array();
                            
$opcion = array();
                            
$datos "";
                            
$linea_activa 0;
                            
$password =0;
                            
$num_elemets =0;
                            
$i 0;
                            if(isset(
$_GET['dato'])) $linea_activa=$_GET['dato']; 
                            
$linea fgets($archivo);//Hago un bucle para recorrer el archivo línea a línea hasta el final del archivo            
                            
while (!feof ($archivo)){ 
                            if (
$linea fgets($archivo)){ //si extraigo una línea del archivo y no es false 
                            
$lista_empresa[$num_lineas] = explode ("=",$linea);//extraigo la empresa
                            
$opcion[$num_lineas]= $lista_empresa[$num_lineas][0];
                            
$selected "";
                            if(
$num_lineas==$linea_activa) {
                                
$datos $linea;
                                
$selected " selected";
                                }
                                
?>'<option value="<?php echo $num_lineas;?>"<?php echo $selected?><?php echo "".$opcion[$num_lineas?> </option>';<?php        
                        $num_lineas
++;
                            } 
                        }
fclose ($archivo);?></select>
                        <input type="input" size="22" style = "display:none" id="modempresa" name="modempresa"  value= "<?php echo $lista_empresa[$linea_activa][0?>">
                        </td><?php
                                    $lista_detalle2 
explode (";",$datos); //separo la empresa=contraseña; ... : ... del resto  
                                    //ahora $lista_detalle2[1] es prioridad, $lista_detalle2[2] es asunto_informe..etc 
                                
$lista_user_password $lista_detalle2[0]; // $lista_detalle2[0]es empresa y contraseña
                                
$password explode ("=",$lista_user_password); //separo    // ahora passwors de [1] es la contraseña
                                
$num_elemets count($lista_detalle2);
                                for (
$i 0$i < (31-$num_elemets) ; $i++){
                                if(
$lista_detalle2[$i] =="")
                                    {
                                        
$lista_detalle2[$i]="";
                                    }
                                
$lista_detalle2[$num_elemets+$i]="";
                                }
?>
Y lo que quiero es cargar el select segun voy leyendo del fichero y que salgan ordenados al abrir el select y no encuentro la manera
  #5 (permalink)  
Antiguo 23/04/2009, 01:40
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 1 mes
Puntos: 839
Respuesta: onchange, onClick

Por un lado, puedes usar PHP para ordenar y ya imprimir los datos del select ordenado.

También, otra opción es usar el evento onload del documento para ordenarlo (si quieres hacerlo con Javascript)
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #6 (permalink)  
Antiguo 23/04/2009, 01:48
 
Fecha de Ingreso: abril-2009
Mensajes: 34
Antigüedad: 15 años, 1 mes
Puntos: 1
Respuesta: onchange, onClick

Ya he probado a poner en el body

Código PHP:
onLoad="ordena()" 
Y el resultado esque tengo que pinchar dos veces el select para que se abra y no coge bien la posicion
  #7 (permalink)  
Antiguo 23/04/2009, 01:54
 
Fecha de Ingreso: abril-2009
Mensajes: 34
Antigüedad: 15 años, 1 mes
Puntos: 1
Respuesta: onchange, onClick

Lo que me ocurre es que voy leyendo del fichero

linea 0 pepito
linea 1 juanito
linea 2 anita
...

y en el select tengo mostrado y actualizo con
Código PHP:
onchange=fncActualizar() 
pepito [0]
juanito[1]
anita[2]

Yo quiero que salga ordenado alfabeticamente

anita[2]
juanito[1]
pepito[0]


Cuando pincho en el cogo la posicion por ejemplo [2],, y la muestro ...entorno_desarrollo_web/Index.php?dato=2

anita con todos los datos leidos de esa linea
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 07:23.