Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/06/2007, 19:49
-thor-
 
Fecha de Ingreso: febrero-2006
Mensajes: 446
Antigüedad: 18 años, 2 meses
Puntos: 3
Ayuda con ajax+formulario

Estoy recien aprendiendo este mundo de ajax,la pagina index.php la utilizo para cargar los link de mi pagina y para eso ocupo ajax,esta pagina me funciona correctamente y me envia a la pagina ingreso.php.
en firefox ocupo firebug.
cuando intento ingresar datos con mi formulario,firebug me entrega el siguiente error:
Código:
ajaxformulario is not defined
la funcion ajaxformulario la tengo hecha en el archivo codigo.js

cual podra ser el problema?,y de que manera podria reducir el codigo ajax que estoy utilizando,por ejemplo dejar todo mi codigo ajax en un archivo js,juntando lo de index php y codigo.js
gracias.

Esta pagina la ocupo para cargar los link
index.php
Código PHP:
<html>
<
head>
<
title>menu</title>
</
head>
<
body>
<
link href='css/estilo.css' rel='stylesheet' type='text/css'>
<
script>
   function 
ajax (direccioncontenido)
//inicio funcion
    
var pagina_requerida false;
    if (
window.XMLHttpRequest)
    {
//inicio if 1
        // Si es Mozilla, Safari etc
        
pagina_requerida = new XMLHttpRequest ();
    }
//fin if 1
     
else if (window.ActiveXObject)
    {
//inicio else if
        // pero si es IE
        
try
        {
//inicio try1
            
pagina_requerida = new ActiveXObject ("Msxml2.XMLHTTP");
        }
//fin try1
        
catch (e)
        {
//inicio catch
            // en caso que sea una versión antigua
            
try
            {
//inicio try 2
                
pagina_requerida = new ActiveXObject ("Microsoft.XMLHTTP");
            }
//fin try 2
            
catch (e)
            {
            }
        }
//fin catch
    
}//fin else if
    
else
    return 
false;
    
pagina_requerida.onreadystatechange = function ()
    {
    
// función de respuesta
    
cargarpagina (pagina_requeridacontenido);
    }
    
pagina_requerida.open ('GET'direccion,true); // asignamos los métodos open y send
    
pagina_requerida.send (null);


    }
//fin funcion llamarasincrono
function cargarpagina (pagina_requeridacontenido)
{
if ((
pagina_requerida.readyState == 4) && (pagina_requerida.status == 200))
   
document.getElementById (contenido).innerHTML pagina_requerida.responseText;
}
</script>

<div id='menu'>
<a href="javascript:ajax('ingreso.php','contenidos');">ingreso</a>
</div>

<div id='contenidos'>

</div>
</body>
</html> 

este es codigo.js que ocupo en ingreso.php
Código PHP:
function ajax()
  {
  var 
xmlHttp;
  try
    {
    
xmlHttp=new XMLHttpRequest();
    return 
xmlHttp;
    }
  catch (
e)
    {
    
// Internet Explorer
    
try
      {
      
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      return 
xmlHttp;
      }
    catch (
e)
      {
      try
        {
        
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        return 
xmlHttp;
        }
      catch (
e)
        {
        
alert("navegador no soportado");
        return 
false;
        }
      }
    }
  }
/******************************************************************/

function ajaxformulario()
{
    var 
rut,nombre,ajaxx;

   
rut document.getElementById('rut').value;
    
nombre document.getElementById('nombre').value;


    
ajaxx=ajax();
    
ajaxx.open("POST","proceso_ingreso.php",true);
    
ajaxx.setRequestHeader("Content-Type""application/x-www-form-urlencoded");

    
ajaxx.onreadystatechange=function()
    {
                if (
ajaxx.readyState==4)
                {
                    if (
ajaxx.status==200)
                     {
    
document.getElementById('capa').innerHTML=ajaxx.responseText;
                     }
                }
    }

    
ajaxx.send("&rut="+rut+"&nombre="+nombre);


este es mi formulario
Código PHP:
<html>
<
head>
<
title>formulario</title>
<
script src='js/codigo.js'></script>
</head>

<body>
<form  action='#' method='post' >
rut:<input type='text' name='rut' id='rut'><br>
nombre:<input type='text' name='nombre' id='nombre'><br>
<input type='button' value='enviar'onclick="ajaxformulario()">
</form>

<div id="capa">
</div>

</body>