用户单击表格的一行,我想(在 Javascript 中)获取该行的第 3 列的 innerhtml。
就像是 :
document.getElementById("tblBlah").rows[i].columns[j].innerHTML
似乎无法实现,我在这里或网上都找不到任何东西。
任何解决方案将不胜感激(没有 jQuery)
用户单击表格的一行,我想(在 Javascript 中)获取该行的第 3 列的 innerhtml。
就像是 :
document.getElementById("tblBlah").rows[i].columns[j].innerHTML
似乎无法实现,我在这里或网上都找不到任何东西。
任何解决方案将不胜感激(没有 jQuery)
document.getElementById("tblBlah").rows[i].columns[j].innerHTML;
应该:
document.getElementById("tblBlah").rows[i].cells[j].innerHTML;
但我有一个明显的印象,即您需要的行/单元格是用户单击的行/单元格。如果是这样,实现此目的的最简单方法是将事件附加到表格中的单元格:
function alertInnerHTML(e)
{
e = e || window.event;//IE
alert(this.innerHTML);
}
var theTbl = document.getElementById('tblBlah');
for(var i=0;i<theTbl.length;i++)
{
for(var j=0;j<theTbl.rows[i].cells.length;j++)
{
theTbl.rows[i].cells[j].onclick = alertInnerHTML;
}
}
这使得所有表格单元格都可以点击,并提醒它是innerHTML。事件对象将被传递给alertInnerHTML
函数,其中this
对象将是对被单击单元格的引用。事件对象为您提供了很多巧妙的技巧,让您了解单击事件的行为方式,例如,如果单元格中有一个被单击的链接,但我建议检查 MDN 和 MSDN(对于 window.event 对象)
如果你的桌子有 tbody
let tbl = document.getElementById("tbl").getElementsByTagName('tbody')[0];
console.log(tbl.rows[0].cells[0].innerHTML)
要获取 html 代码:
document.getElementById("table").rows[i].cells[j].innerHTML;
获取文本:
document.getElementById("table").rows[i].cells[j].innerText;