Foros del Web » Programando para Internet » Javascript » Frameworks JS »

doble evento

Estas en el tema de doble evento en el foro de Frameworks JS en Foros del Web. Buenos días. Estoy haciendo mis primeros pasos por ajax. Con la clase xajax he formado una función para validar datos de usuasrio. Funciona perfectamente, pero ...
  #1 (permalink)  
Antiguo 02/04/2009, 01:54
 
Fecha de Ingreso: enero-2008
Mensajes: 303
Antigüedad: 16 años, 10 meses
Puntos: 0
doble evento

Buenos días.
Estoy haciendo mis primeros pasos por ajax.
Con la clase xajax he formado una función para validar datos de usuasrio.
Funciona perfectamente, pero me gustaria perfeccionar algo.

En el siguiente script vereris que añado un evento con "onmousemove".(submit formulario)

El mismo boton ya tenía otro evento "onclick".(para validar formulario)

Para evitar que el usuario tuviera que pinchar dos veces para ejecutar el formulario, se me ocurrio el evento onmousmove.

¿Se puede hacer de otra manera, sin que se tenga que mover el raton para terminar?
Gracias y un saludo


Código PHP:
 $respuesta->addEvent("envio","onmousemove","document.formulario.submit()");

         return 
$respuesta
Script completo:

Código PHP:
function validar_pais($form_entrada){
   
$respuesta = new xajaxResponse();
   
$error "";
   if (
$form_entrada["usuario"] == ""){
      
$error "Debe escribir sus datos de usuario";
      }
   elseif (
$form_entrada["pass"] == ""){
      
$error"Debes escribir su contraseña"

   }else{
   
$hostname_remota "";
$database_remota "";
$username_remota "";
$password_remota "";

$remota mysql_pconnect($hostname_remota$username_remota$password_remota) or trigger_error(mysql_error(),E_USER_ERROR); 
mysql_select_db($database_remota$remota);
$query_nuevo "SELECT * FROM users WHERE usuario = '$form_entrada[usuario]'and pass='$form_entrada[pass]'";
$nuevo mysql_query($query_nuevo$remota) or die(mysql_error());
$row_nuevo mysql_fetch_assoc($nuevo);
$totalRows_nuevo mysql_num_rows($nuevo);


  if (
$totalRows_nuevo==0){
  
         
$error "El usuario o la contraseña no son correctos";
      }
      
      else{
           
$respuesta->addEvent("envio","onmousemove","document.formulario.submit()");

         return 
$respuesta;
      }
   }
   
$mensaje '<div style="border: 2px solid #0000cc; font-size: 8pt; padding:5px; margin-top:10px; width: 300px;">' $error '</div>';
   
   
$respuesta->assign("mensaje","innerHTML",$mensaje);

   return 
$respuesta;
}

$xajax->register(XAJAX_FUNCTION,"validar_pais");
$xajax->processRequest(); 
  #2 (permalink)  
Antiguo 02/04/2009, 09:08
Avatar de eall  
Fecha de Ingreso: noviembre-2008
Ubicación: Concepcion
Mensajes: 127
Antigüedad: 16 años, 1 mes
Puntos: 8
Respuesta: doble evento

Podrias añadir un script que se ejecute al terminar tu programa para haga el submit.

Código:
  if ($totalRows_nuevo==0){
  
         $error = "El usuario o la contraseña no son correctos";
      }
      
      else{
           $respuesta->addScriptCall("envio",0);

         return $respuesta;
      }
   }
y tu funcion de envio seria:

Código:
function envio(){
    document.form.submit();
}
que lindo, no...

esop
  #3 (permalink)  
Antiguo 02/04/2009, 11:48
 
Fecha de Ingreso: enero-2008
Mensajes: 303
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: doble evento

Muchas gracias.

Si es lindo, si.
Un salud
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 18:42.