zyn*_*nkn 7 html javascript onclick custom-data-attribute
我正在做一张桌子。
document.querySelector('table').addEventListener('click', (e) => {
console.log(e.target);
console.log(e.target.dataset.item);
})Run Code Online (Sandbox Code Playgroud)
td {
padding: 8px;
border: 1px solid black;
background-color: blue;
}
span {
background-color: red;
padding: 4px;
}Run Code Online (Sandbox Code Playgroud)
<table>
<tr>
<td data-item="item1"><span>1</span></td>
<td data-item="item2"><span>2</span></td>
<td data-item="item3"><span>3</span></td>
<td data-item="item4"><span>4</span></td>
<td data-item="item5"><span>5</span></td>
</tr>
</table>Run Code Online (Sandbox Code Playgroud)
当我点击蓝色部分时,我可以获得data-item属性。但是当我点击红色部分时,我不能。
我想修复它,如果我点击<span/>,<td/>我想从中获取data-item属性<td />。
尝试使用closest您的子标签而不是dataset.
document.querySelector('table').addEventListener('click', (e) => {
console.log(e.target.closest("td").dataset.item);
})Run Code Online (Sandbox Code Playgroud)
td {
padding: 8px;
border: 1px solid black;
background-color: blue;
}
span {
background-color: red;
padding: 4px;
}Run Code Online (Sandbox Code Playgroud)
<table>
<tr>
<td data-item="item1"><span>1</span></td>
<td data-item="item2"><span>2</span></td>
<td data-item="item3"><span>3</span></td>
<td data-item="item4"><span>4</span></td>
<td data-item="item5"><span>5</span></td>
</tr>
</table>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5634 次 |
| 最近记录: |