1

わかりましたので、少し調査を行いましたが、この ajax のことでちょっと立ち往生しています。

私が持っている2つのA HREFは、ajax呼び出しを送信する「テスト」に分類され、次に実際のページネーションの次のボタンのように機能する「.page」に分類されます。ページ ボタンをクリックすると、非表示の入力フィールドの値が page-2 に変更されます。これは、ページ 2 に移動するように機能しますが、ajax を使用します。今のところ、page-2 と console.log に入力隠しフィールドを変更するようにハードコーディングしています。

現在の AJAX 呼び出しは投稿データを送信しません。現在はテスト用であり、ページネーション ボタンである href をエコーアウトするだけです。

AJAX ページネーションを作成しようとしています。

テストをクリックすると、基本的に現在の Asdasd リンク (ページネーション ボタンのように機能する) が、asdasd ではなくテキストとしてページネーションを持つ同一のリンクに置き換えられます。このリンクは非表示の入力値を変更する必要がありますが、現在、ページネーション リンクは AJAX によって生成され、ページの読み込み後に読み込まれるため、最初の jQuery は機能せず、何もしません。ajax呼び出しで同じjqueryをエコーアウトすると機能しますが、問題は、ajaxが呼び出されるたびにjqueryスクリプトをリロードしたくないことです。

次のように .ready を使用できると思いました。

$('.page').ready(function(){
     $('.asdasd, .page').on("click", function(e){

     e.preventDefault();

     if($(this).hasClass('page')){
          console.log(true);
     }

     $('.new-page').val('page-2');

     console.log($('.new-page').val());
});

ページの準備ができているかどうかを常に確認しようと思っていましたが、それは意味がありません。

私が知っている唯一のことは、HTML DOM要素がリロードされ、jqueryがそれを認識するように、jqueryスクリプトを送信し、各jquery呼び出しで再度エコーアウトする必要があることです。

私の質問は、jquery スクリプトを 1 回だけロードして、ページのロード後にロードされた場合でも常にそのページネーション ボタンを選択するようにする方法はありますか?

4

1 に答える 1

1

jQuerys のdelegateメソッドを使用します。

説明:ルート要素の特定のセットに基づいて、現在または将来、セレクターに一致するすべての要素の 1 つ以上のイベントにハンドラーをアタッチします。

$(document.body).delegate('.asdasd, .page', 'click', function(e) {
    e.preventDefault();

    if ($(this).hasClass('page')) {
        console.log(true);
    }

    $('.new-page').val('page-2');

    console.log($('.new-page').val());
});​
于 2012-07-27T00:26:25.223 に答える