2017-05-20 18 views
0

私のフォームがうまく機能しないようにしようとしていますが、何が入っていてもエラー機能が全く働かないことはありません。すべてうまく動作しますが、エラー(例:悪いvar名を与えるなど)を強制すると、コンソールにエラーが表示されますが、警告は発生しません。ここでajaxフォームでエラーが発生したときにエラーメッセージが表示されない

は私のコードです:

$.ajax({ 
    async: false, 
    cache: false, 
    type: 'post', 

    url: 'dostuff/234', 

    data: { 
     email: fEmail, 
     firstname: fFirstname, 
     lastname: fLastname, 
     zipcode: fZipcode, 
     optout: fOptout 
    }, 
    dataType: "text", 
    error: function(xhr, status, error) { 
     alert(status); 
     alert(xhr.responseText); 
    }, 
    success: function (response) { 
     overlay.appendTo(document.body); 
     setTimeout(function(){ finishUp(); }, 3000);  
    } 
}); 
+0

それが正しいはResponseCodeを受信したため、成功関数が呼び出されるようだ、あなたは確認していますか? –

+0

はい、私は確認します。しかし、エラーを終了してコンソールが確認することがわかっていても、私はエラー関数を呼び出すことはできません。 –

+0

あなたの質問にコンソールエラーを追加する、私はあなたがsthを誤解していると思う –

答えて

0

それらが適切に定義されている場合は、エラーMSGや成功を得ることができる必要があります。

data: { 
     email: "fEmail", 
     firstname: "fFirstname", 
     lastname: "fLastname", 
     zipcode: "fZipcode", 
     optout: "fOptout" 
    }, 

var fFirstname = 'test'; 
 

 

 
$.ajax({ 
 
    async: false, 
 
    cache: false, 
 
    type: 'post', 
 

 
    url: 'dostuff/234', 
 

 
    data: { 
 
     email: "fEmail", 
 
     firstname: "fFirstname", 
 
     lastname: "fLastname", 
 
     zipcode: "fZipcode", 
 
     optout: "fOptout" 
 
    }, 
 
    dataType: "text", 
 
    error: function(xhr, status, error) { 
 
    alert(status); 
 
    alert(xhr.responseText); 
 
    }, 
 
    success: function(response) { 
 
    overlay.appendTo(document.body); 
 
    setTimeout(function() { 
 
     finishUp(); 
 
    }, 3000); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

+0

彼らは正しく定義されていますが、私は故意に悪い情報を送信するときにエラー機能を呼び出すことができません。コンソールにエラーが表示され、私のフォームは動作しませんが、エラー機能は実行されません。 –

関連する問題