На моей странице есть галерея фотографий, динамически добавленная после вызова Ajax. Каждое изображение имеет меню, пользователь может нажать на элемент меню EAH.
Когда пользователь нажимает на меню Item, мне нужно получить атрибут данных контейнера UL.
ниже кода меню HTML, добавленного в DOM сценарием jQuery: < /p>
Код: Выделить всё
[list]
[*]
${(() => {
if (data.pictures[i].status == '1'){
return `[url=javascript:void(0);][i][/i] Unpublish[/url]`
} else {
return `[url=javascript:void(0);][i][/i] Publish[/url]`
}
})()}
[*]
${(() => {
if (data.pictures[i].listed == '1'){
return `[url=javascript:void(0);][i][/i] Delist[/url]`
} else {
return `[url=javascript:void(0);][i][/i] List[/url]`
}
})()}
[*]
[url=javascript:void(0);]
[i][/i] Download
[/url]
[*]
[url=javascript:void(0);]
[i][/i] Move
[/url]
[*]
[url=javascript:void(0);]
[i][/i] Delete
[/url]
[/list]
< /code>
Под кодом в файле jQuery, чтобы получить атрибут UL Data-Imgid, когда пользователь нажимает на элемент якоря LI: < /p>
$("body").on("click",".dropdown-item",function(e){
e.preventDefault;
$(this).closest('ul.dropdown-menu').css({"color":"red", "border":"2px solid red"});
let imgid = $(this).parents('ul.picture-menu').data('imgid');
console.log(`Pictur imgid is ${imgid}`);
});
< /code>
Я не могу получить данные IMGID ... Я всегда становлюсь неопределенным.$(this).parents('ul.dropdown-menu').css({"color":"red", "border":"2px solid red"});
Подробнее здесь: https://stackoverflow.com/questions/797 ... -in-jquery
Мобильная версия