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

Me recarga la Pagina al Enviar form

Estas en el tema de Me recarga la Pagina al Enviar form en el foro de Frameworks JS en Foros del Web. buenas .. tengo un problema en esta pagina .. la cual intento crear un alta con xajax.. al enviar el formulario me recarga la pagina.. ...
  #1 (permalink)  
Antiguo 22/06/2010, 07:00
 
Fecha de Ingreso: abril-2010
Mensajes: 6
Antigüedad: 14 años, 8 meses
Puntos: 0
Me recarga la Pagina al Enviar form

buenas ..

tengo un problema en esta pagina .. la cual intento crear un alta con xajax..

al enviar el formulario me recarga la pagina.. y no puedo ver el resultado..

todo el codigo php anda.. es decir m realiza las validaciones y me da de alta y eso..

lo que hace mal es que recarga la pagina una vez apretado el boton enviar..

estuve mirando y repasando el codigo bastante tiempo.. y nada

saludos y gracias de ante mano


Código PHP:
<?php

include('seguridad.php');


include(
'conexion.php');
include(
'funciones/funcion.php');

//incluímos la clase ajax
require ('xajax/xajax_core/xajax.inc.php');


//instanciamos el objeto de la clase xajax
$xajax = new xajax();
$xajax->setCharEncoding('ISO-8859-1');
$xajax->configure('decodeUTF8Input',true);



 function 
select_combinado($id_localidad){

   
$data=mysql_query("select * from establecimiento where idlocalidad='$id_localidad'");

    
$nuevo_select "<select style='width:160px' id='idestablecimiento' name='idestablecimiento'>";

    while(
$esta=mysql_fetch_array($data))
    {
      
$nuevo_select .= "<option value=".$esta[idestablecimiento].">".$esta[idestablecimiento]."-".$esta[razonsocial]."</option>";

    }
    
$nuevo_select .= "</select>";

    return 
$nuevo_select;
 }

 function 
generar_select($cod_localidad){
   
$respuesta = new xajaxResponse();
   
$respuesta->setCharacterEncoding('ISO-8859-1');

   if (
$cod_localidad==999){
      
$nuevo_select '<select id="idestablecimiento" name="idestablecimiento">
                  <option value=0>Elegir Localidad</option>
                  </select>'
;
   }else{
      
$nuevo_select select_combinado($cod_localidad);
   }

   
$respuesta->Assign("seleccombinado","innerHTML",$nuevo_select);

   return 
$respuesta;

 }



 function 
validarDatos($nombre,$idestablecimiento){
   if((
$idestablecimiento==''))
   {
   
$error.='El codigo del Hotel debe tener al menos 1 caracateres y deben ser sólo numeros<br/>';
   
$GLOBALS["flag"]=2;
   }
   if((
$nombre=='') || (strlen($nombre)< ))
   {
   
$error.= 'El nombre del Responsable debe tener por lo menos 3 caracteres<br/>';
   
$GLOBALS["flag"]=2;
    }
      
// echo $error;
    
return $error;
 }


 function 
procesar_formulario($form_carga){

         
$nombre=$form_carga["nombre"];
         
$idestablecimiento=$form_carga["idestablecimiento"];
         
$idcargo=$form_carga["idcargo"];
         
$telefono=$form_carga["telefono"];
         
$fax=$form_carga["fax"];


        
$err=validarDatos($nombre,$idestablecimiento);
        if(!isset(
$err))
        {    
$tabla="responsable";
             
$condicion="nombre='$nombre' and idestablecimiento='$idestablecimiento'";
             
$data=sqlselect2($tabla,$condicion);
             if(
$data==null)
             {
                
$campos="nombre,idestablecimiento,idcargo,telefono,fax";
                
$valores="'$nombre','$idestablecimiento','$idcargo','$telefono','$fax'";

                
sqlinsert($tabla$campos$valores);
                
$salida.="Se dio de alta correctamente.";
                
$GLOBALS["flag"]=1;
             }
             else{
                
$salida.="No se pudo dar de alta. Ya existe un registro con esos datos ";
                
$GLOBALS["flag"]=2;
             }

        }
        else{
         
$salida=$err;
        }

    
//instanciamos el objeto para generar la respuesta con ajax
    
$respuesta = new xajaxResponse();
    
$respuesta->setCharacterEncoding('ISO-8859-1');
    
//escribimos en la capa con id="respuesta" el texto que aparece en $salida

    
$respuesta->Assign("resultado","style.color","#000000");


    if(
$GLOBALS["flag"]==1){
    
$respuesta->Assign("resultado","style.backgroundColor","#58ACFA");
    
$respuesta->Assign("resultado","style.border","solid");
    
$respuesta->Assign("resultado","style.borderColor","#0066CC");

    
//$respuesta2->Assign("nombre","value","");
    
}

    if(
$GLOBALS["flag"]==2){
    
$respuesta->Assign("resultado","style.backgroundColor","#FF0000");
    
$respuesta->Assign("resultado","style.border","solid");
    
$respuesta->Assign("resultado","style.borderColor","#CD0C01");

    }

    
$respuesta->Assign("resultado","innerHTML",$salida);

   return 
$respuesta;

 }

$xajax->register(XAJAX_FUNCTION,'procesar_formulario');
$xajax->register(XAJAX_FUNCTION,'generar_select');

//El objeto xajax tiene que procesar cualquier petición
$xajax->processRequest();

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<title>Sistema de Carga EOH</title>
<meta name="keywords" content="" />
<meta name="description" content="" />
<link href="layout.css" rel="stylesheet" type="text/css" media="screen" />
<?php   //la ruta a la carpeta raíz donde están las librerías xajax.
   
$xajax->printJavascript("xajax/");
?>
<script language="JavaScript" type="text/javascript">

function tabular(e,obj) {
  tecla=(document.all) ? e.keyCode : e.which;
            if(tecla!=13) return;
            frm=obj.form;
            for(i=0;i<frm.elements.length;i++)
                if(frm.elements[i]==obj)
                {
                    if (i==frm.elements.length-1)
                        i=-1;
                    break
                }
    /*ACA ESTA EL CAMBIO disabled, Y PARA SALTEAR CAMPOS HIDDEN*/
            if ((frm.elements[i+1].disabled ==true) || (frm.elements[i+1].type=='hidden') )
                tabular(e,frm.elements[i+1]);
    /*ACA ESTA EL CAMBIO readOnly */
            else if (frm.elements[i+1].readOnly ==true )
                tabular(e,frm.elements[i+1]);
            else frm.elements[i+1].focus();

            return false;
}
</SCRIPT>
</head>

<body>


<div id="container">

     <div id="header">
        <?php include("header.php");?>
     </div> <!--fin del header-->

<div id="navigation">
        <?php include("navigation.php");?>
    </div><!-- Fin navegation -->


     <div id="content">
        <br>
        <div id="resultado"></div>

            <h3>Alta de Responsables</h3>


            <legend>Ingrese los siguientes datos</legend>
            <br>
            <br>
            <form id="formulario" name="formulario">
            <table class="" border="0">

            <tr>
                <td>Nombre y Apellido:</td>
                <td><input type="text" id="nombre" name="nombre" class="required" onkeypress="return tabular(event,this)" /></td>
            </tr>
             <tr>
            <td>Localidad</td>
          <td>
          <select name="idlocalidad" id="idlocalidad" onchange="xajax_generar_select(document.formulario.idlocalidad.options[document.formulario.idlocalidad.selectedIndex].value)" onkeypress="return tabular(event,this)">
            <option value="0" selected="selected" onkeypress="return tabular(event,this)">Seleccione Localidad</option>
            <?php

            $tabla
="localidad";
            
$data=sqlselect2($tabla,'');

            foreach(
$data as $dato)
            {
             echo 
"<option value=$dato[idlocalidad]>$dato[idlocalidad] - $dato[nombre]</option>";

            }
            
?>
            </select>
                </td>
                <tr>

            <tr>
          <td>Hotel</td>
          <td>
          <div id="seleccombinado">
        <select name="idestablecimiento" id="idestablecimiento" onkeypress="return tabular(event,this)" >
        <option value="0">Seleccione Hotel</option>
        </select>
        </div>
           </td>
          </tr>

            <tr>
          <td>Cargo</td>
          <td>
          <select name="idcargo" id="idcargo" class="requerido"  onkeypress="return tabular(event,this)" >
            <option value="0" selected="selected" onkeypress="return tabular(event,this)" >Seleccione Cargo</option>
            <?php

            $data
=mysql_query("select * from cargo order by idcargo");

            while(
$dato=mysql_fetch_array($data))
            {
             echo 
"<option value=$dato[idcargo] onkeypress='return tabular(event,this)' >$dato[idcargo] - $dato[nombre]</option>";

            }

            
?>
            </select>
           </td>
          </tr>

            <tr>
                <td>Telefono :</td>
                <td><input type="text" name="telefono" class="required" onkeypress="return tabular(event,this)" /></td>
            </tr>

            <tr>
                <td>Fax :</td>
                <td><input type="text" name="fax" class="required" onkeypress="return tabular(event,this)" /></td>
            </tr>

            <tr>
                <td colspan="2" align="center">
            <input type="submit" value="Aceptar" class="boton" onclick="xajax_procesar_formulario(xajax.getFormValues('formulario'))"/></td>

            </tr>
            </table>

            </form>

    </div><!--fin del content-->
  #2 (permalink)  
Antiguo 22/06/2010, 07:20
 
Fecha de Ingreso: abril-2010
Mensajes: 6
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: Me recarga la Pagina al Enviar form

solucionado.. era por el input type="submit" lo cambie a type="button"

Etiquetas: ajax, enviar, recarga, formulario
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 13:46.