JavaScript Button说[object HTMLButtonElement]

时间:2018-11-15 22:45:59

标签: javascript html function object element

这是我的代码:

var newRow = tableRef.insertRow(tableRef.rows.length);

var newCell0 = newRow.insertCell(0);
var newCell1 = newRow.insertCell(1);
var newCell2 = newRow.insertCell(2);
var newCell3 = newRow.insertCell(3);
var newCell4 = newRow.insertCell(4);
var newCell5 = newRow.insertCell(5);

newCell0.innerHTML = name.value;
newCell1.innerHTML = index.value;
newCell2.innerHTML = phonenum.value;
newCell3.innerHTML = grade.value;
newCell4.innerHTML = session.value;

var btn1 = document.createElement("BUTTON");
var btn2 = document.createElement("BUTTON");

var t1 = document.createTextNode("Confirm");
var t2 = document.createTextNode("Revert");

btn1.appendChild(t1);
btn2.appendChild(t2);
btn1.setAttribute('onclick', 'confirm(this);');
newCell5.appendChild(btn1);
btn2.setAttribute('onclick', 'revert(this);');
newCell5.appendChild(btn2);

function confirm(o) {
    var tr = o.parentNode.parentNode;
    tr.style.backgroundColor = "green";
}

当我单击按钮确认它显示[object HTMLButtonElement]时出了什么问题?

谢谢。

3 个答案:

答案 0 :(得分:0)

我猜是因为window.confirm是JS中的常规功能,用于显示弹出窗口供用户确认或拒绝操作。

您可以尝试更明确地声明函数,例如将其放入对象中,或将其重命名为其他名称,例如confirmSelection

答案 1 :(得分:0)

如果您无意间在某处(console.log,警报等)看到打印内容[object HTMLButtonElement],则可能是在尝试打印字符串,而是将打印语句交给了一个对象,该对象导致在括号中打印出对象的类型。就像@Bravo所说的那样,没有足够的上下文和代码。知道您想要的结果是有帮助的。如果您尝试打印有关按钮的信息(如按钮的标签),则可以在按钮名称后添加.textContent,以查看其html标记中的文本。

答案 2 :(得分:0)

确认是一个javascript函数,您可以通过此函数。在您的范围内,这是HTMLElement对象。更改功能,然后再试一次。