Вопрос по javascript, html – Javascript получить текстовое значение столбца из определенной строки таблицы HTML

14

Пользователь нажимает на строку таблицы, и я хочу получить (в Javascript) innerhtml, скажем, 3-й столбец этой строки.

Что-то вроде :

<code>document.getElementById("tblBlah").rows[i].columns[j].innerHTML
</code>

не представляется достижимым, и я не могу найти что-либо здесь или в сети.

Любые решения будут очень признательны (НЕТ jQuery)

Ваш Ответ

2   ответа
0

в случае, если на вашем столе есть Tbody

let tbl = document.getElementById("tbl").getElementsByTagName('tbody')[0];
console.log(tbl.rows[0].cells[0].innerHTML)
34
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 объект будет ссылкой на ячейку, по которой щелкнули. Объект события предлагает вам тонкие хитрые уловки о том, как вы хотите, чтобы событие click действовало, если, скажем, в ячейке, по которой щелкнули, есть ссылка, но я предлагаю проверить MDN и MSDN (для объекта window.event)

Error: User Rate Limit Exceeded

Похожие вопросы