2017-09-10 4 views
0

jQueryでdivをロードしようとしましたが、動的に作成された要素にクリックイベントを設定して、PHPスクリプトにリクエストしてからdivをリロードします。 残念ながら、イベントはリロード後に設定されません。 マイコードは、これまでのようになります。jQueryでdivとsetイベントを再ロード

$(document).ready(function() { 
    $("#incomplete").load("incompleteTasks.php", '', function() { 
      //Setting Click-Events 
      $(".btn_aufg").click(function() { 
      window.alert($(this).attr("id")); 
      var encoded = encodeURIComponent($(this).attr("id")); 
      //Marking Task as completed... 
      $(this).load("taskworker.php?action=complete&id=" + encoded); 
      //reloading div 
      $("incomplete").load("incompleteTasks.php"); 
    }); 
}); 

});

ユーザーがボタンをクリックした後でもう一度イベントをアクティブにするにはどうすればよいですか?

+0

あなたは[委任イベント](https://learn.jquery.com/events/event-delegation/)を作成する必要があります – vsync

答えて

0

これを行います...

$(document).("click",".btn_aufg",function() { 
    var encoded = encodeURIComponent($(this).attr("id")); 
    $(this).load("taskworker.php?action=complete&id=" + encoded); 
    //reloading div 
    $("#incomplete").load("incompleteTasks.php"); 
}); 

$("#incomplete").load("incompleteTasks.php"); 
+0

ありがとうございますが、$(document).on( "click"、 ".btn_aufg"、function(){ – BirdyB

0

使用on代わり

$("body").on("click", ".btn_aufg", function() { 
    //Click function 
}); 
関連する問題