クリックしたときにタグがあると、タグのデータ値を警告します。それはうまく動作しますが、動的に作成された要素をクリックしても機能しません。以下はがクリックで動的に作成された要素で期待どおりに機能しないjQuery
<img id="no_p_fav" src="http://localhost:8000/icons/non_star.png">
要素を作成しますが、ページがロードされたときがあった要素に正常に動作します私は動的に動作しません
$('.all_candidate_bar').prepend('<div id = "icons"> <a class = "favorite" data-value = "'+data.msg.id+'" > <img id = "no_p_fav" src="{{url("/icons/non_star.png")}}" ></img></a></div>');
機能以下は、動的要素を作成する方法です。
$(document).ready(function(){
$('.favorite').on('click',function(){
var candidate_id = $(this).data('value');
alert(candidate_id);
});
});
は、私はまた、どのように私はそれが動的および静的の両方の要素のための要素のために動作するのですか?この
$('#icons').on('click','a.favorite',function(){//myFunction});
$('a').on('click','.favorite',function(){//myFunction});
を試してみましたか
' ' .favorite'' => ''a.favorite''。 Formerはアンカーの中で 'favorite'クラスを持つ要素を選択します。 – Tushar
これはタイプミスでした。この場合はyesです。私がそれをクリックすると、1つの要素だけが働きます。休憩は機能していません。 –
Googleイベントの委任では、最も近い静的な親にイベント処理を委任する必要があります。 – abhishekkannojia