Javascript文本更改不更改ID
我有一个onclick javascript函数,其目标是将表的文本更改为其他内容Javascript文本更改不更改ID,javascript,Javascript,我有一个onclick javascript函数,其目标是将表的文本更改为其他内容 function functionL1() { if (document.getElementById("A1").innerHTML = "Text 1" ) { var Transfer1 = document.getElementById("B1 ").innerHTML; document.getElementById("A1").innerHTML = Trans
function functionL1() {
if (document.getElementById("A1").innerHTML = "Text 1" ) {
var Transfer1 = document.getElementById("B1 ").innerHTML;
document.getElementById("A1").innerHTML = Transfer1;
}
这是可行的,但我想让它使相同的文本只出现一次
不幸的是,这不起作用
function functionL1() {
if (document.getElementById("A1").innerHTML = "Text 1" ) {
var Transfer1 = document.getElementById("B1 ").innerHTML;
document.getElementById("A1").innerHTML = Transfer1;
}
else if (document.getElementById("A2").innerHTML = "Text 1" ) {
var Transfer2 = document.getElementById("P1").innerHTML;
document.getElementById("A2").innerHTML = Transfer2;
}
}
我认为这是因为在将A1
更改为B1
之后,javascript函数无法识别A1
不再是文本1
有人知道怎么解决这个问题吗
注意:将
innerhtml
替换为value
不起作用,正如@Gerald Schneider在评论中所说
function functionL1() {
if (document.getElementById("A1").innerHTML = "Text 1" ) {
var Transfer1 = document.getElementById("B1 ").innerHTML;
document.getElementById("A1").innerHTML = Transfer1;
}
else if (document.getElementById("A2").innerHTML = "Text 1" ) {
var Transfer2 = document.getElementById("P1").innerHTML;
document.getElementById("A2").innerHTML = Transfer2;
}
}
您使用的是(=
)而不是(=
/=
)。这肯定是你的问题之一
另一个原因可能是,您的单元格不仅包含文本,而且还包含一些标记?如果是这种情况,并且您查看了它,那么.innerHTML
的值将不同于您看到的内容
JS中还有一个名为
.textContent
document.getElementById(“A1”).innerHTML=“Text 1”
的属性将文本分配给变量,并始终计算为true
。你很可能想要=
。不,这根本不起作用=
是用来给变量赋值的=
或==
用于比较值。第二个函数永远不会执行else if
部分,因为if
始终为真。我在编写此答案时甚至没有检查注释。这些评论在简短的lol中解释得几乎相同。