首页 > 解决方案 > 我的函数在 JavaScript 中不能工作两次

问题描述

我有一个包含许多行和列的表格,并且想要将td单元格中的占位符文本“单元格 1”和“单元格 2”(在第 1 列和第 2 列中)更改为“成功”。

我已经编写了一个函数来执行此操作,但是当我单击它时它只会更改第一个单元格,而当我尝试单击它们时不会更改其他单元格。

document.querySelector('td').addEventListener('click', button8Click);

function button8Click() {
    document.querySelector('td').innerHTML = "Success";
}

我需要专门针对td元素,并认为我这样做了,但我处于停滞状态。

标签: javascriptfunctionvariablesevent-handlingdom-events

解决方案


我猜你不知道它是如何querySelector工作的。它选择第一个 td 元素。这就是为什么它只工作一次。

你需要这样的东西:

function changeContent(i) {
    document.querySelectorAll('td')[i].innerHTML = "Success";
}

这将更改编号为 i 的 td 元素。


推荐阅读