Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/05/2012, 23:33
Montes28
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 14 años, 3 meses
Puntos: 6
jquery modal y validacion

hola amigos del foro espero me puedan ayudar

me encuentro integrando a una aplicacion jquery modal pero he tenido inconvenientes en la parte de la validacion

este es el codigo hasta el momento no pasa por la validacion


Código Javascript:
Ver original
  1. $("#dialog-form").dialog('open');
  2.          $( "#dialog:ui-dialog" ).dialog( "destroy" );
  3.          var title = $( "#title" ),
  4.          allFields = $( [] ).add( title ),
  5.          tips = $( ".validateTips" );
  6.                 function updateTips( t ) {
  7.             tips
  8.                 .text( t )
  9.                 .addClass( "ui-state-highlight" );
  10.             setTimeout(function() {
  11.                 tips.removeClass( "ui-state-highlight", 1500 );
  12.             }, 500 );
  13.         }
  14.  
  15.         function checkLength( o, n, min, max ) {
  16.             if ( o.val().length > max || o.val().length < min ) {
  17.                 o.addClass( "ui-state-error" );
  18.                 updateTips( "Length of " + n + " must be between " +
  19.                     min + " and " + max + "." );
  20.                 return false;
  21.             } else {
  22.                 return true;
  23.             }
  24.         }
  25.  
  26.         function checkRegexp( o, regexp, n ) {
  27.             if ( !( regexp.test( o.val() ) ) ) {
  28.                 o.addClass( "ui-state-error" );
  29.                 updateTips( n );
  30.                 return false;
  31.             } else {
  32.                 return true;
  33.             }
  34.         }
  35.                  
  36.         $( "#dialog-form" ).dialog({
  37.             autoOpen: false,
  38.             height: 550,
  39.             width: 800,
  40.             modal: true,
  41.             buttons: {
  42.                 "Crear Nuevo Evento": function() {
  43.                
  44.                 var bValid = true;
  45.                     allFields.removeClass( "ui-state-error" );
  46.  
  47.                     bValid = bValid && checkLength( title, "title", 3, 16 );
  48.                    
  49.                         var arrayOpt = new Array;
  50.               $('input[type=checkbox]').each(function() {
  51.                         if ($(this).attr('name') == 'opcion[]') {
  52.                             if ($(this).attr('checked') == 'checked') {
  53.                                 arrayOpt.push($(this).val());
  54.                                
  55.                             }
  56.                         }
  57.                     });
  58.                 //alert (arrayOpt);
  59.          $("#start").val($.fullCalendar.formatDate(start, 'MM/dd/yyyy HH:mm:ss'));
  60.          $("#end").val($.fullCalendar.formatDate(end, 'MM/dd/yyyy HH:mm:ss'));
  61.          $("#allDay").val(allDay);
  62.                
  63.                 var titleq = $("#title").val();
  64.                 var startq = $("#start").val();
  65.                 var endq = $("#end").val();
  66.                 var allDayq = $("#allDay").val();
  67.                 var nombre = $("#autor").val();
  68.                
  69.                  
  70.              
  71.                               $.ajax({
  72.                   url:'archivo.php',
  73.                   type:'post',
  74.                   data:'opciones='+arrayOpt+'&title='+titleq+'&start='+startq+'&end='+endq+'&allDay='+allDay+'&nombre='+nombre,
  75.                   }).done(function(data) {
  76.                  //alert(titleq+" "+arrayOpt+" "+startq+" "+endq);
  77.                  $('#calendar').fullCalendar( 'refetchEvents' )
  78.                
  79.    
  80.                   });
  81.                     $( this ).dialog( "close" );
  82.                                        
  83.                    
  84.                 },
  85.                
  86.                
  87.                 Cancelar: function() {
  88.                     $( this ).dialog( "close" );
  89.                    
  90.                    
  91.                 }
  92.             },
  93.             close: function() {
  94.                 allFields.val( "" ).removeClass( "ui-state-error" );
  95.             }
  96.         });


pero si en esta parte del codigo quito esta line ($( this ).dialog( "close" );
)
Código Javascript:
Ver original
  1. $('#calendar').fullCalendar( 'refetchEvents' )
  2.                
  3.    
  4.                   });
  5.                     $( this ).dialog( "close" );

el formulario muestra los mensajes de validacion pero a la base de datos se envian los valores



Código HTML:
Ver original
  1. <div id="dialog-form" title="Crear Nuevo Evento">
  2. <p class="validateTips">All form fields are required.</p>
  3. <form id="modal">
  4.         <label for="name">Evento</label>
  5.         <input type="text" name="title" id="title" class="text ui-widget-content ui-corner-all" />






que estoy haciendo mal?

gracias

Última edición por Montes28; 06/05/2012 a las 09:23