2013-07-23 78 views
0

我有一個窗體,我顯示在fancybox模式內。我正在使用JQuery和AJAX提交表單。但由於某種原因,當我點擊提交時,fancybox模式關閉。表單通過我的JQUERY和AJAX提交就好了。這是一個問題,因爲如果有任何錯誤,它們應該顯示在模態內部。我能做些什麼來阻止它在提交時關閉?提交按鈕關閉花式框

我jQuery和AJAX:

$("#change-pass").submit(function() { 

     var dataString = $(this).serialize(); 
     var $this = $(this); 
     $.ajax({ 
      type: "POST", 
      url: "change_password.php", 
      data: dataString, 
      success: function(html) { 
       $this.parent().find('.tutorial-text').html(html); 
      } 
     }); 


     return false; 

    }); 

謝謝!

+0

什麼是$ this.parent()?也許這是包含fancybox的元素? – putvande

+0

'$(「#change-pass」)'你的表單的選擇器? – JFK

回答

0

由於您使用的是ajax,因此您可能需要另一個fancybox來查找錯誤。您可以添加一個error處理程序到您的ajax調用,如:

$("#change-pass").submit(function() { 

    var dataString = $(this).serialize(); 
    var $this = $(this); 
    $.ajax({ 
     type: "POST", 
     url: "change_password.php", 
     data: dataString, 
     success: function(html) { 
      $this.parent().find('.tutorial-text').html(html); 
     }, 
     error : function(html){ 
      var errorMsg = // build your error msg here 
      $.fancybox.open(errorMsg, { 
       // API options 
      }) 
     } 
    }); 
    return false; 
});