jquery経由でDOMに追加された要素のクリックイベントをキャッチするために何か特別なことをする必要がありますか?
dom に以下を追加します。
$('.dvPagerCities > .pagination > ul > li > a').addClass("pageCities")
クロムを介してhtmlに表示されるもの
<a class="pageCities">»</a>
しかし、クリックイベントをキャッチしようとすると、アラートは表示されません。
<script>
$(function () {
$('.pageCities').click(function () {
alert('City click detected');
return false;
});
});
</script>
- - - - - - - アップデート - - - - - - - -
<script>
$('.dvPagerCities > .pagination > ul > li > a').addClass("pageCities")
$(function () {
$(".getCities").click(function () {
var city = $(this).text();
$.ajax({
url: '@Url.Action("pvDisplayListOfWeatherCities", "Weather")',
type: 'GET',
data: { id: $(this).attr("dataCountry")},
dataType: 'html',
success: function (result) {
//alert('Country click detected'),
$('Title').text('Cities in ' + city),
$('#dvFullPage').remove();
$('#dvPartial').html(result);
},
error: function () {
alert("error");
}
});
return false;
});
});
</script>
<script>
$(function () {
$('.dvPagerCities').on('click', '.pageCities', function () {
alert('City click detected');
return false;
});
});
</script>
----------------HTML追加------------------
<div class="dvPagerCities">
<div class="pagination">
<ul>
<li class="PagedList-skipToPrevious">
<a href="/Weather/Index/Australia?p=1" class="pageCities">«</a>
</li>
<li class="disabled PagedList-pageCountAndLocation">
<a class="pageCities">Page 2 of 2.</a>
</li>
<li class="disabled PagedList-skipToNext">
<a class="pageCities">»</a>
</li>
</ul>
</div>
</div>
------------------追加情報------------------
リンクをクリックして天気予報のページに移動し、国をクリックしてその国の都市のリストを表示しても何も起こらず、ページ全体が更新されます。
しかし、ページのリンクをもう一度クリックすると、アラートが表示されます。
都市が最初に表示され、クリックが検出される前にページ全体が更新されたときにクラスが取得されないのはなぜですか