Buenos Días!
Estoy realizando un desarrollo y me he conseguido con un problema con el uso de las etiquetas <div>
EL problema es el Siguiente:
Estoy realizando el inicio de sesion de un Site, para lo cual utilizo ajax.
Es una tabla que contiene un formulario y este formulario contiene los datos para el inicio de sesion. Al pulsar el icono de envio el realiza la validacion de los campos con Javascript y luego, si esta todo ok, llama a la funcion que ejecuta el AJAX para validar los datos. Hasta aqui todo funciona de maravilla.
Posteriormente, si el resultado es positivo, el AJAX imprime dentro de las etiquetas DIV del formulario, en caso contrario escribe tambien pero otro texto.
Específicamente el problema es que en Mozilla funciona todo correctamente, pero en el IE no modifica los texto.
En principio las etiquetas <div> estaban ubicadas posteriormente a las Etiquetas <td> y funcionaba bien en ambos navegadores. (ejemplo: <td><div></div></td>).
Ahora las tengo ubicadas antes de un <tr> y como digo, solo en mozilla funciona.
(ejemplo: <div><tr><td></td></tr></div>). Tendra esto algo que ver???
Incluyo el Código:
HTML:
<table width="318" height="82" border="0" cellpadding="0" cellspacing="0" class="cuadro_sesion">
<form name="form" method="post" action="./index.php">
<div id="contenedor">
<tr>
<td width="293" height="8" class="inicio_sesion_rojo"> Anonimo</td>
<td width="25" height="8" class="inicio_sesion_rojo"></td>
</tr>
</div>
<tr>
<td height="1" colspan="2" align="center" valign="middle"><img src="./imagenes/raya_login.gif" width="318" height="1"></td>
</tr>
<tr>
<td height="8" class="inicio_sesion_negro" colspan="2"> Correo electrónico: &n bsp; Contraseña:</td>
</tr>
<tr>
<td height="8">
<input type="text" size="21" name="email" class="inicio_sesion_text"/>
<input type="password" size="21" name="password" class="inicio_sesion_text"/>
</td>
<td width="25" height="8" class="inicio_sesion" align="center">
<input type="image" src="./imagenes/botones/boton_login.gif" value="" onclick="return inicio_sesion()">
</td>
</tr>
<tr>
<td height="8" align="right" colspan="2" class="inicio_sesion_gris"><b>Olvido su contraseña | <a href="./index.php?id=1">Regístrese</a> </b></td>
</tr>
</form>
</table>
Codigo Javascript:
//Funcion que valida el formulario y llama al ajax
function inicio_sesion() {
var txterrores='';
var error = false;
if(document.form.email.value==''){
txterrores+='- Debe ingresar su correo electrónico\n';
alert('Error al procesar el Formulario: \n'+txterrores);
document.form.email.focus();
return false;
}
if(document.form.password.value=='') {
txterrores+='- Debe ingresar su Contraseña\n';
alert('Error al procesar el Formulario: \n'+txterrores);
document.form.password.focus();
return false;
}
iniciar_sesion(document.form.email.value,document. form.password.value);
return false;
}
//funcion que ejecuta el ajax
function iniciar_sesion(mail,password) {
var contenedor1;
contenedor1 = document.getElementById("contenedor");
ajax=nuevoAjax();
ajax.open("GET", "./include/login.php?email="+mail+"&password="+password,true) ;
alert ('abrio conexion a ajax');
ajax.onreadystatechange=function() {
if (ajax.readyState==4) {
contenedor1.innerHTML = "Cargo"; //Este texto es solo de prueba
}else {
contenedor1.innerHTML="cargando!"; //Este texto es solo de prueba
}
}
ajax.send(null);
}
Mucho agradeceria su colaboración!
Saludos
kike