1. ホーム
  2. jquery

[解決済み] ajaxで生成されたコンテンツでjqueryクリックが機能しない

2023-08-23 05:50:42

質問

を使用しています。 $(".button").on("click", function(){ });

コンテナ上にあるボタンをクリックすると、ajax呼び出しが行われ、コンテンツが をクリックすると、新しいものが更新されます。 .button ボタンをクリックしても何も表示されないのですが・・・。

を試したこともあります。

$(".button").live("click", function(){ });

または

$(".button").click(function(){ });

どうすればうまくいくのか?

EDIT : 私のhtmlです。

<div class="container">
   <ul>
       <li>item1</li>
       <li>item2</li>
       <li>item3</li>
   </ul>
   <input type="button" value="reload" class="button" />
</div>

どのように解決するのですか?

このようにすべきです。

$('body').on('click', '.button', function (){
        alert('click!');
    });

ajaxリクエスト中に変更されないコンテナがある場合は、こちらの方がパフォーマンスが高くなります。

$('.container').on('click', '.button', function (){
        alert('click!');
    });

デリゲートイベントは常に、動的要素を含む最も近い静的要素にバインドしてください。