我有简单的代码,但不起作用:
jQuery('#list-of li').removeClass('active').find('[data-item-id="' + item_id + '"]').addClass('active');
仅当我将其与 li
一起使用时才有效
jQuery('#list-of li[data-item-id="' + item_id + '"]').addClass('active');
最佳答案
您需要使用过滤器找不到
find():将查找后继元素,但您已经拥有上一组具有 data-item-id
属性的 li
元素
filter():将使用传递的选择器过滤当前的元素集
jQuery('#list-of li').removeClass('active').filter('[data-item-id="' + item_id + '"]').addClass('active');
关于jquery - 如何在对象列表中通过data-*查找,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18335404/