我有一张表,当我使用“onclick”命令单击特定的表格单元格时,我希望将单元格中的数据打印到输入字段上。我正在考虑getdocumentbyid或类似的东西
迎接
答案 0 :(得分:0)
如何为每个单元格设置唯一ID,然后调用document.getElementById("<id>").innerHTML
来获取内容?
或者,更好的是,如果onClick
事件是针对您想要获取内容的相同元素,则不需要ID;你应该可以使用this.innerHTML
。
答案 1 :(得分:0)
最简单的方法是在表或表行上使用单个事件处理程序来处理onclicks,而不是对每个单元格应用onclick
处理程序。 onclick事件将从TD元素冒泡到处理程序将触发的表元素。这称为委托。
一个例子:
// Get a handle to the input box
var myInput = document.getElementById("myInput");
// Set up the onclick event for the table
document.getElementById("mytable").onclick = function (evt) {
// window.event for IE, evt argument for others
var evt = evt || window.event;
// Get the element the event originated from
var el = evt.target || evt.srcElement;
// If the element's tagName is <TD>, set the text of the input
if (el.tagName == "TD")
// innerText for IE, textContent for others
myInput.value = "textContent" in el ? el.textContent : el.innerText;
}
如果您只想将其用于特定行,请改为为该行设置onclick事件。