myLink
AJAX で読み込まれたコンテンツをdiv
HTML ページの (appendedContainer) に挿入する必要があるリンクがあります。問題は、click
jQuery でバインドしたイベントが、appendedContainer に挿入された新しくロードされたコンテンツで実行されていないことです。イベントは、click
AJAX 関数で読み込まれていない DOM 要素にバインドされています。
イベントがバインドされるように、何を変更する必要がありますか?
私のHTML:
<a class="LoadFromAjax" href="someurl">Load Ajax</a>
<div class="appendedContainer"></div>
私のJavaScript:
$(".LoadFromAjax").on("click", function(event) {
event.preventDefault();
var url = $(this).attr("href"),
appendedContainer = $(".appendedContainer");
$.ajax({
url: url,
type : 'get',
complete : function( qXHR, textStatus ) {
if (textStatus === 'success') {
var data = qXHR.responseText
appendedContainer.hide();
appendedContainer.append(data);
appendedContainer.fadeIn();
}
}
});
});
$(".mylink").on("click", function(event) { alert("new link clicked!");});
ロードするコンテンツ:
<div>some content</div>
<a class="mylink" href="otherurl">Link</a>