ほとんどの jQuery を Ajax で正常に使用できません。応答からエラー メッセージを取得して通知 (トースト) div に表示しようとしていますが、.show()
と .hide()< に加えて、 /code> 何を試してもうまくいきません。
console.log()
を使用して URL からの応答をデコードし、すべてが期待どおりに動作することを確認しましたが、Ajax 内で関数を呼び出すことができません成功関数< ;/ p>
これはボタンのクリック時に起動する現在の JS です。
function errMsg(code, msg) { const eCode = 'E-NS: 'コード' ' msg; const eMsg = '' eCode ''; $('.notify').empty().html(eMsg); } $(document).ready(function() { $('#next-1').click(function(e) { e.preventDefault(); $.ajax({ URL:「../data.php」、 メソッド: 'POST'、 データ: $('#form-1').serializeArray()、 データ型: 'JSON'、 成功:関数(応答){ if(response.status === true){ $('#form-1').hide(); $('#form-2').show(); } それ以外 { console.log(response.status); console.log('Response = ' 応答.コード応答.エラー); errMsg(応答コード、応答.エラー); var eCode = 'E-NS: 'response.code' 'response.error; var eMsg = '
データを
を使用する必要があります。JSON
として送信する場合、jQuery メソッド.ajax()
では、オブジェクトのdata
プロパティにオブジェクト固有の引数を渡す必要があります。jQuery.serialize()
関数は、URL のパラメータ文字列を作成します。ここではこれは機能しません。jQuery.serializeArray()
:サーバーが何を送り返すのかも確認する必要があります。ダミーの JSON API の場合、
.status
プロパティは返されません。したがって、テストする意味はありません。div にテキストが表示されるまで、トースト div (
関数のトーストを更新した後にその関数を呼び出すことはありませんでした。 リーリー$('.notify')
) を非表示にします。ただし、これを表示する関数 (以下を参照) の追加を怠っており、errorCheck() Code> 更新 AJAX
を使用して AJAX
success