2012-07-26 110 views
0

所以在我的語法中顯然有些問題。驗證是可以的。當我點擊提交時,表單發送電子郵件給我,然後它刪除我的輸入值。一切都很好,直到現在。但它不會像應該那樣淡出。如果我再次點擊提交,則會淡出。謝謝!Ajax表單在淡出之前需要點擊兩次提交

<script type="text/javascript"> 
$(document).ready(function() { 
    $('#form1').ajaxForm({ 
     beforeSubmit: validate 
    }); 

    function validate(formData, jqForm, options) { 
     var name = $('input[name=name]').fieldValue(); 
     var email = $('input[name=email]').fieldValue(); 
     var message = $('textarea[name=message]').fieldValue(); 

     if (!name[0]) { 
      alert('Please enter a value for name'); 
      return false; 
     } 
     if (!email[0]) { 
      alert('Please enter a value for email'); 
      return false; 
     } 
     if (!message[0]) { 
      alert('Please enter a value for message'); 
      return false; 
     } 

     else { 
      $("#form1").ajaxForm(function() { 
     $("#formplic").fadeOut(1000, function() { 
      $(this).html("<img src='images/postauto3.png'/>").fadeIn(2000); 
     }); 
    }); 
     var message = $('textarea[name=message]').val(''); 
     var name = $('input[name=name]').val(''); 
     var email = $('input[name=email]').val(''); 

      } 
    } 

}); 

回答

0

好的。我想到了。問題是,除此之外,我再次表示ajax.Form。我刪除了該行,並且它工作正常。所以,如果有人犯我同樣的錯誤,請刪除$(「#form1」)。ajaxForm(function()。