Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/05/2007, 17:01
andresfelipeav
 
Fecha de Ingreso: mayo-2007
Ubicación: ibague - tolima
Mensajes: 8
Antigüedad: 17 años, 7 meses
Puntos: 0
Validar Un Form Con Ajax

Hola amigos, tengo una duda, hice una pagina web con ajax, pero esta molestando la validacion de los campos y la compatibilidad entre los navegadores; este es el codigo :

AQUI LES PRESENTO EL CODIGO DEL FORM :


<center>
<FORM NAME="miFormu" ACTION=" " onSubmit="enviar('insertar_comentario.php','mensaj e','POST'); return false; " >

Nick : <INPUT TYPE="text" name="nick1" SIZE=20 MAXLENGTH=20 >
<BR>
<TEXTAREA COLS=60 ROWS=10 name="comentario">
</TEXTAREA>
<BR>
<INPUT TYPE="submit" VALUE="Enviar Comentario" >
<INPUT TYPE="reset" VALUE="Borrar Comentario" >

</FORM>
</center>



Y AQUI ESTA EL SCRIPT AJAX :



function creaAjax(){
var objetoAjax=false;
try {
/*Para navegadores distintos a internet explorer*/
objetoAjax = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
/*Para explorer*/
objetoAjax = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (E) {
objetoAjax = false;
}
}

if (!objetoAjax && typeof XMLHttpRequest!='undefined') {
objetoAjax = new XMLHttpRequest();
}
return objetoAjax;
}


//********************************************* FUNCION QUE ENVIA LOS DATOS ********************************************

function FAjax (url,capa,metodo){

var ajax=creaAjax();
var capaContenedora = document.getElementById(capa);

if(metodo.toUpperCase()=='GET'){

ajax.open ('GET', url,true);

ajax.onreadystatechange = function() {

if (ajax.readyState==1) {
capaContenedora.innerHTML="Cargando.......";
capaContenedora.innerHTML= '<br><br><br><br> <center> <img src="images/loader.gif"> </center>';

}else
if (ajax.readyState==4){

if(ajax.status==200){
document.getElementById(capa).innerHTML=ajax.respo nseText;

}else
if(ajax.status==404){
capaContenedora.innerHTML = "La direccion no existe";

}else {
capaContenedora.innerHTML = "Error: ".ajax.status;
}
}
}

ajax.send(null);
return;

}

}



//********************************************* FUNCION QUE ENVIA LOS DATOS ********************************************

function enviar(url,capa,metodo){

var ajax=creaAjax();
var capaContenedora = document.getElementById(capa);
var t1, t2;
t1 = document.getElementById('nick1').value;
t2 = document.getElementById('comentario').value;


if (t1.length <=0) {
alert('DEBE COLOCAR UN NOMBRE O NICK')
document.getElementById('nick1').focus();
return;

}else
if (t2.length <=0) {
alert('DEBE COLOCAR UN COMENTARIO')
document.getElementById('comentario').focus();
return;

}else{

if(metodo.toUpperCase()=='POST'){

ajax.open ('POST', url,true);
ajax.onreadystatechange = function() {

if (ajax.readyState==1) {
capaContenedora.innerHTML="Cargando.......";
capaContenedora.innerHTML= '<img src="../images/loader.gif">';

}else
if (ajax.readyState==4){

if(ajax.status==200){
document.getElementById(capa).innerHTML=ajax.respo nseText;

}else
if(ajax.status==404){
capaContenedora.innerHTML = "La direccion no existe";

}else {
capaContenedora.innerHTML = "Error: ".ajax.status;
}
}
}

ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
ajax.send("nick1="+t1+"&comentario="+t2);
return;

}
}

}


me gustaria saber si es posible y me dijeran que esta mal o si conocen un mejor metodo, mas standar, seguro y portable de hacer envios y recepciones con ajax.

muchas gracias