我对JS是全新的,所以请容忍我;我甚至不确定我是否在以正确的方式寻找答案,但经过数小时的谷歌搜索和修补,我一直无法让它正常工作。
我有一个HTML表格,用户点击一行。我可以获得如下所示的单击元素:
var elem = document.elementFromPoint(e.clientX, e.clientY);
var tr = elem.closest("tr");
var set = [];
$.each(tr.cells, function(cell) {
set.push({name : cell.dataset.field, value : cell.innerText});
});
但我得到了一个错误:
未捕获类型错误:
无法读取未定义的属性“字段”
在HTMLTableCellElement。(:1:80)
在Function.each(jquery.min.js:2)
时间:1:17
这里有一块手表
tr
其中突出显示的部分显示
field
我在找。
我很确定我可以在获得名称/值对数组后将其转换为对象,例如使用
JSON.parse()
那么,我的代码或方法有什么问题?有没有更简洁或更有效的方法来做我想做的事情?