2010-11-19 23 views
0

我想用jquery-loadmask插件在表单数据传输时屏蔽表单(我用AJAX调用存储数据到数据库的动作)。jquery-loadmask:我应该在哪里调用unmask()?

要屏蔽我使用这个形式:

$('#form').submit(function() { 

      form_data = $.param($(this).serializeArray()); 

      $.ajax({ 

       url: "<?php echo url_for('profile/index') ?>", 

       type: "POST", 

       data: form_data, 

      }); 


      $("form").mask("Loading..."); 



      return false; 

    }); 

但是,在我应该叫揭露()?

问候

哈维

回答

1

你应该在你success回调揭露(当服务器与数据回来),像这样:

$.ajax({ 
    url: "<?php echo url_for('profile/index') ?>", 
    type: "POST", 
    data: form_data, 
    success: function() { $("form").unmask(); } 
}); 

或者更短的$.post()格式:

$.post("<?php echo url_for('profile/index') ?>", form_data, function() { 
    $("form").unmask(); 
}); 
0

只需添加一个成功或错误处理程序:

$.ajax({ 

      url: "<?php echo url_for('profile/index') ?>", 

      type: "POST", 

      data: form_data, 

成功:功能(数据,textStatus,XMLHttpRequest的){$( “表”)揭露(); }

 }); 
+0

哦,这是丑陋的 - 但你明白了吗? – WillCodeForCoffee 2010-11-19 20:24:01

相关问题