Событие клика, работающее только в первый раз jquery
Ниже код работает в первый раз после обновления страницы. Но когда я пытаюсь нажать снова, это не работает.
После нажатия на элемент он переходит на следующую страницу (страницу сведений), а когда он возвращается, событие щелчка не работает.
getNewsCategoryloop: function(dataMap){
var _this = this;
var text;
text = "<div id=\"repeat_get_list_of_category\">";
for(key in dataMap) {
text += '<div class="gallery_wrap col-2">\
<div class="gallery_view full_image" id="cat'+key+'">\
<img src="assets/img/news/athletics_img.jpg" alt="athletics">\
<span class="gallery_title">'+ (dataMap[key].field_saf == null ? 'no title' : dataMap[key].field_saf) +'</span>\
</div>\
</div>';
$(document).on('click', "#cat"+key, function(){
_this.getNewsbyCategoryName("#cat"+key);
})
}
text+= "</div>";
$("#getListOfNewsCategorylist").html(text);
},
1 ответ
Решение
Введите этот код:-
$(document).on('click', "#cat"+key, function(){
_this.getNewsbyCategoryName("#cat"+key);
})
За пределами самой функции и измените ее, как показано ниже:
$(document).on('click', ".gallery_view", function(){
app.getNewsbyCategoryName($(this).attr('id'));
})
Так что код должен быть:-
getNewsCategoryloop: function(dataMap){
var _this = this;
var text;
text = "<div id=\"repeat_get_list_of_category\">";
for(key in dataMap) {
text += '<div class="gallery_wrap col-2">\
<div class="gallery_view full_image" id="cat'+key+'">\
<img src="assets/img/news/athletics_img.jpg" alt="athletics">\
<span class="gallery_title">'+ (dataMap[key].field_saf == null ? 'no title' : dataMap[key].field_saf) +'</span>\
</div>\
</div>';
}
text+= "</div>";
$("#getListOfNewsCategorylist").html(text);
};
$(document).on('click', ".gallery_view", function(){
app.getNewsbyCategoryName($(this).attr('id'));
})