1. ホーム
  2. jquery

[解決済み] Contact Form 7 のフォームで AJAX を有効にする(AJAX ロード後)。

2022-02-16 20:01:46

質問

検索してみましたが、ページやフォームをAJAXで読み込む方法に関する結果しか返ってきません。 私がやっているのは AJAX を使ってフォームを読み込むことなのですが (Contact Form 7)、そのフォームで AJAX 投稿を再び有効にする方法を知りたいのです。CF7 でこのようなことは可能でしょうか?

解決方法を教えてください。

Contact Form 7 は init 関数を呼び出しており、これはページのロード時に実行されます。もしあなたのフォームが AJAX を使ってロードされているなら、フォームがロードされた後にこの関数が呼び出されるようにしなければなりません。

調べてみてください。

plugins/contact-form-7/includes/js/scripts.js

関数の定義については wpcf7InitForm .

編集する この関数を呼び出すと、毎回新しいローディングロゴが挿入されます。残念ながら、jQueryを使用してDOMから重複したローダーを削除する以上の解決策は見つかりませんでした。

function initContactForm() {
    jQuery('div.wpcf7 > form').wpcf7InitForm();
    jQuery('form.wpcf7-form')
        .each(function() {
            $j(this).find('img.ajax-loader').last().remove();
        });
}