Tema: mootools
Ver Mensaje Individual
  #2 (permalink)  
Antiguo 05/03/2011, 07:21
ira
 
Fecha de Ingreso: febrero-2004
Mensajes: 31
Antigüedad: 20 años, 3 meses
Puntos: 0
Respuesta: mootools

Era mas facil de lo que creia al fina lo he solucionado de esta manera:
Lo dejo por si veis algun fallo y pr si le hace falta a alguien.

Código Javascript:
Ver original
  1. var myform = document.id('form');
  2.     var envio = form.getElementById('envio');
  3.     var validator = new Form.Validator(myform, {
  4.         evaluateOnSubmit: false
  5.     });
  6.     myform.addEvent('submit', function(e) {
  7.         if (aqui condicion requerida) {
  8.             e.stop();
  9.             // Salta mensaje aviso no todo ok
  10.             return;
  11.         }
  12.         if (!validator.validate()) {
  13.             e.stop();
  14.             return;
  15.         }
  16.         e.stop();
  17.         // creo un elemento que sera la transparencia negra
  18.         var black = new Element('div', {
  19.             style: 'display: block; width: 100%; height: 100%; background-color: #000; z-index: 666; position: absolute;'
  20.         }).injectInside(cont);
  21.         black.setStyles({
  22.             opacity: 0.7
  23.         });
  24.         // creo el popup
  25.         var popup = new Element('div', {
  26.             style: 'display: block; width: 350px; height: 150px; background-color:#000000; -moz-border-radius:5px 5px 5px 5px; border:1px solid #4C4F54; z-index: 1000; position: absolute; margin: 300px 0 0 215px;'
  27.         }).injectInside(cont);
  28.         // aqui va el tipico loading y el mensaje
  29.         var loading = new Element('div', {
  30.             style: 'display: block; width: 220px; height: 20px; background:url(../img/loading.gif) no-repeat; margin: 40px auto; text-align:center; line-height:60px; color:#FFFFFF;',
  31.             text: 'Uploading DataBase'
  32.         }).injectInside(popup);
  33.        
  34.  
  35.     this.set('send', {
  36.        // recojo mensaje que todo ha salido bien y redirijo a otra pagina
  37.         onComplete: function(resp) {
  38.             loading.set('html', resp);
  39.             document.id('container').load('xxxxx.php');
  40.         }
  41.     });
  42.     //envío el formulario
  43.     this.send();
  44. });

Saludos