Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/08/2012, 09:49
dconsolidado
 
Fecha de Ingreso: noviembre-2008
Mensajes: 38
Antigüedad: 15 años, 4 meses
Puntos: 2
Pregunta Problemas con el ajaxSubmit

Saludos a todos, tengo un problema con el plugin ajaxSubmit, les explico:

En primer lugar uso ese plugin solo para subir un archivo y devolver el contenido en XML, eso lo hace muy bien, luego abro un dialog ui modal y realizo otras operaciones, tambien bien, el problema se presenta cuando cierro el modal por medio de un button, lo que sucede es que se bloquea el file input y los demas controles, excepto los button de las acciones, entonces ya no puedo escoger otro archivo para subirlo, esta como deshabilitado, pero no tiene ese attributo, por si acaso le hago 'disabled' dinamicamente y tampoco, el enable(true o false) tampoco me obedecen, en conclusion no se pueden hacer mas acciones, tampoco selecciona los labels, y lo raro es que cuando cierro el modal con la [X] Close de mismo ui-dialog modal no ocurre esto, en si, hago las mismas acciones cuando se cierra el modal, en el button, pero pasa esto, busque y parece que a nadie le ha pasado esto, y si es asi, me pueden dar una mano??.

Aqui dejo el codigo.

Código Javascript:
Ver original
  1. Pagina que traigo con Ajax
  2.  
  3. JS.
  4. Funcion Ajax
  5. function fu_doItemMenu(url, target, method){
  6.     $.ajax({
  7.         async: true,
  8.         url: url,
  9.         type: (method)?method:'POST',
  10.         success: function(data){
  11.             if(typeof(target)!='undefined'){
  12.                 $("#"+target).html($(data));
  13.             }
  14.         }
  15.     });
  16. }
  17.  
  18. function cerrarVentanaPopup(){
  19.     if (confirm("Al cerrar perderá los cambios no guardados, desea continuar..? !!")){
  20.         var idfile = $('#idObjFile').get(0).innerHTML;
  21.         idfile = idfile.substr(5, 36);
  22.         $( "#dialog-form" ).parent().remove();
  23.         $( "#dialog-form" ).remove();
  24.         $('.ui-widget-overlay').remove();
  25.         fu_doQuitarfile_car('deletefileloader.htm','undefined','POST', idfile);
  26.         fu_doItemMenu('vercargamagnetico.htm', 'myFrame', 'POST');
  27.         return true;
  28.     }else{
  29.         return false;
  30.     }
  31. }
  32.  
  33. Ventana de Dialogo
  34. function fu_openVentanaCarga(){
  35.     var idfile = $('#idObjFile').get(0).innerHTML;
  36.     idfile = idfile.substr(5, 36);
  37.     $( "#dialog-form" ).dialog({
  38.         autoOpen      : false,
  39.         bgiframe      : true,
  40.         closeOnEscape : false,
  41.         resizable     : false,
  42.         modal         : true,
  43.         width         : 920,
  44.         height        : 670,
  45.         zIndex        : 1002,
  46.         dialogClass   : 'popup_dialog',
  47.         title         : 'Registro y Carga de datos del Medio Magnético a la Base de datos',
  48.         close: function() {
  49.             $(this).remove();
  50.             fu_doQuitarfile_car('deletefileloader.htm','undefined','POST', idfile);
  51.             fu_doItemMenu('vercargamagnetico.htm', 'myFrame', 'POST');
  52.         },
  53.         beforeClose: function(event, ui) {
  54.             if (confirm("Al cerrar perderá los cambios no guardados, desea continuar..? !!")){
  55.                 return true;
  56.             }else{
  57.                 return false;
  58.             }
  59.         }
  60.     });
  61.     $("#dialog-form").dialog('open');
  62. }
  63.  
  64. function fu_VentanaCarga(){
  65.     $('body').append($("<div id='dialog-form' style='z-index:1;'></div>"));
  66.     var canRegistros = $('#canRegistros').get(0).innerHTML;
  67.     var idfile = $('#idObjFile').get(0).innerHTML;
  68.     estadoBoton('cmdNewVerify_car', true);
  69.     estadoBoton('cmdSendRecord_car',true);
  70.     estadoBoton('cmdRegresar_car',  true);
  71.     fu_openVentanaCarga();
  72.     idfile = idfile.substr(5, 36);
  73.     canRegistros = canRegistros.toString().replace("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;","");
  74.     fu_doItemMenu_Car('registrocarga.htm', 'dialog-form', 'POST', idfile);
  75. }
  76.  
  77.  
  78. Funciones que mandan el archivo a verificar por ajaxSubmit
  79.  
  80. $('#cmdVerificar_car').click(function(event){
  81.     var filename = $('input[name=fileName_car]').val();
  82.     if(jQuery.trim(filename) == ""){
  83.         $('#resultados').html('');
  84.         alert("Por favor, ubique el archivo a verificar...!!");
  85.         setTimeout(function(){
  86.             $('#fileName_car').focus();
  87.         }, 100);
  88.         $('#fileName_car').select();
  89.         event.stopPropagation();
  90.         event.preventDefault();
  91.         return false;
  92.     }
  93.     fncSendVerify_car();
  94.     event.stopPropagation();
  95.     event.preventDefault;
  96. });
  97.  
  98. function fncSendVerify_car(){
  99.     $('#resultados').html('');
  100.     var options = {
  101.         url         : 'verificafile.htm',
  102.         beforeSubmit: showRequest,
  103.         success     : showResponse,
  104.         type        : 'POST',
  105.         dataType    : 'xml'
  106.     };
  107.     $('#frmDatos').ajaxSubmit(options);
  108. }
  109.  
  110. function showRequest(formData, jqForm, options) {
  111.     var queryString = $.param(formData);
  112.     //alert('About to submit: \n\n' + queryString);
  113.     return true;
  114. }


De antemano, muchas gracias, por la atencion.

Renzo.