js右击单元格获取表格id
时间: 2024-04-29 21:22:23 浏览: 88
你可以在右击事件的回调函数中,使用 `event.target` 获取被右击的单元格元素,然后通过遍历父元素(表格)的 `attributes` 属性来获取表格的 id。以下是一个示例代码:
```javascript
document.addEventListener('contextmenu', function(event) {
// 获取被右击的单元格元素
var cell = event.target;
// 遍历父元素 (表格) 的 attributes 属性来获取表格的 id
while (cell && cell.tagName.toLowerCase() !== 'table') {
cell = cell.parentNode;
}
if (cell) {
var tableId = cell.getAttribute('id');
console.log('表格 id:', tableId);
}
});
```
注意,这个代码仅适用于纯 HTML 表格,如果你的表格是使用 JavaScript 动态生成的,可能需要一些额外的处理。
相关问题
js右击单元格获取动态生成表格id
可以使用事件委托来实现在动态生成的表格中右击单元格获取其id。具体实现方法如下:
1. 给表格元素添加一个id,方便获取。
2. 给表格元素绑定右击事件,使用事件委托监听表格单元格的右击事件。
3. 在事件监听函数中,获取目标单元格的id值并进行处理。
示例代码如下:
```javascript
// 获取表格元素
var table = document.getElementById("table1");
// 给表格元素绑定右击事件
table.addEventListener("contextmenu", function (event) {
// 取消默认的右键菜单事件
event.preventDefault();
// 判断点击的是不是表格单元格
if (event.target.tagName === "TD") {
// 获取单元格的id
var cellId = event.target.getAttribute("id");
// 处理单元格的id
console.log("单元格的id为:" + cellId);
}
});
```
注意:上述代码需要在动态生成表格后执行。如果是使用Ajax或其他异步方式生成表格,则需要在生成表格后再执行上述代码。
阅读全文