javascript - 如何在 javascript(无 jquery)中查询数据属性值?

标签 javascript html

如果我有一个由 ul's(行)和 li's(单元格)组成的网格,我想根据数据属性值获取特定的单元格ulli 的:

document.querySelectorAll(div.grid ul[data-${this.y}] li[data-${this.x}]'_

当我在 MDN 上搜索时,我只找到了如何根据 data 属性 检索 html 元素,但没有找到它的值。

如有任何指点,我们将不胜感激 - 也请不要使用 jQuery

最佳答案

您可以使用字符串插值并让它工作。

这是您可以执行的操作。

document.addEventListener('DOMContentLoaded', function() {

  let ulData = 2,
    liData = 4;

  document.querySelector(`div.grid ul[data="${ulData}"] li[data="${liData}"]`).classList.add("red");
});
.red {
  color: red;
}
<div class="grid">
  <ul data="2">
    <li data="1">
      One
    </li>
    <li data="2">
      Two
    </li>
    <li data="3">
      Three
    </li>
    <li data="4">
      Four
    </li>
    <li data="5">
      Five
    </li>
  </ul>
</div>

关于javascript - 如何在 javascript(无 jquery)中查询数据属性值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40581253/

相关文章:

javascript - AJAX:使用数组值的背景颜色更改功能不起作用?

javascript - dojo 复选框已选中但直到鼠标悬停才显示

javascript - 在javascript中获取最接近的笛卡尔轴对齐向量

html - 如何在调整可调整大小的 div 时获取 ScaleX 和 ScaleY 值..?

javascript - 如何在 flex display 中将元素放在彼此下面?

javascript - 将选择重置为特定选项 AngularJs 和 Javascript/JQuery

javascript - 删除 EventListener 不起作用 - Javascript

html - CSS/HTML - 下拉菜单上的文本向右移动,即使我将它左对齐

javascript - 有什么方法可以将 Google 网络/自定义搜索结果显示到另一个 UI 中?

html - 如何使用 CSS 类定位 <a href > 元素?