Hola a tod@s!
Hace unos días publique este post, y me he dado cuenta que me he dejado un detalle importante.
El código anterior funciona.
Cuando no funciona en IE es cuando el mismo formulario lo creo dinámicamente con DOM, como veréis es idéntico al del post anterior.
Este es el código:
Código PHP:
<script type="text/javascript">
function protoSend(){
var params = Form.serialize($('presForm'));
new Ajax.Updater('formBox', 'form.php', {asynchronous:true, parameters:params});
}
function aparece(){
p = document.createElement('div');
texto = document.createTextNode('formulario');
p.appendChild(texto);
p.id = 'formBox';
p.style.clear = 'both';
f = document.createElement('form');
f.name = 'presForm';
f.id = 'presForm';
f.method = 'post';
f.action = 'form.php';
f.onsubmit = function(){
protoSend();
return false;
}
la = document.createElement('label');
inp = document.createElement('input');
inp.type ='text';
inp.name ='email';
inp.id= 'email';
la.appendChild(inp);
sub = document.createElement('input');
sub.type = 'submit';
sub.value = 'enviar';
f.appendChild(la);
f.appendChild(sub);
p.appendChild(f);
ant = document.getElementById('e1');
ant.appendChild(p);
}
</script>
El .php es el mismo.
El problema es que con IE se envia el mensaje, pero NO me aparece el "Gracias por tu e-mail" en el lugar del formulario.
Gracias por vuestra ayuda.
Saludos!