AJAX 成功時に関数を呼び出すことができません
P粉020556231
P粉020556231 2023-09-02 13:54:42
0
2
558
<p>ほとんどの jQuery を Ajax で正常に使用できません。応答からエラー メッセージを取得して通知 (トースト) div に表示しようとしていますが、<code>.show()</code> と <code>.hide()< に加えて、 /code> 何を試してもうまくいきません。 </p> <p><code>console.log()</code> を使用して URL からの応答をデコードし、すべてが期待どおりに動作することを確認しましたが、Ajax 内で関数を呼び出すことができません成功関数< ;/ p> <p>これはボタンのクリック時に起動する現在の JS です。 </p> <pre class="brush:php;toolbar:false;">function errMsg(code, msg) { const eCode = '<b>E-NS: 'コード' </b> </br>' msg; const eMsg = '<span class="err" style="color: red;">' eCode '</span>'; $('.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 = '<b>E-NS: 'response.code' </b> </br>'response.error; var eMsg = '<span class="err>' eCode '</span>'; $('.notify').empty().html(eMsg); } } }) }) )} <p>php や jQuery にはエラーや警告がないことに注意することが重要です。私は AJAX を初めて使用するので、これが私にできるかどうかはまったくわかりませんが、十分論理的だと思われます。 </p>
P粉020556231
P粉020556231

全員に返信(2)
P粉038161873

データを JSON として送信する場合、jQuery メソッド .ajax() では、オブジェクトの data プロパティにオブジェクト固有の引数を渡す必要があります。 jQuery.serialize() 関数は、URL のパラメータ文字列を作成します。ここではこれは機能しません。 jQuery.serializeArray():

を使用する必要があります。

リーリー リーリー リーリー

サーバーが何を送り返すのかも確認する必要があります。ダミーの JSON API の場合、.status プロパティは返されません。したがって、テストする意味はありません。

いいねを押す +0
P粉872182023

div にテキストが表示されるまで、トースト div ($('.notify')) を非表示にします。ただし、これを表示する関数 (以下を参照) の追加を怠っており、errorCheck() Code> 更新 AJAX を使用して AJAX success

関数のトーストを更新した後にその関数を呼び出すことはありませんでした。 リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート