Javascript 一个innerHTML 不起作用,其他代码可以工作

问题描述 投票:0回答:1

我的代码目前是

var seltrack = document.getElementById('seltrack').innerHTML;
var selmodel = document.getElementById('selmodel').innerHTML;

然后在循环中我有:

selmodel = "Weight";
seltrack = "Best"; 

HTML 代码位于单独的文档中,其中包含指向 js 脚本的相应链接:

<p id='seltrack' style='display:inline;color:black;'></p>
<p id='selmodel' style='display:inline;color:black;'></p>

所以对我来说,

seltrack
设置得很好,但是,
selmodel
不会改变。我尝试在每次迭代后检查
selmodel
是什么,它似乎正确地更改了
innerHTML
,但它没有显示在实际网页上。我尝试寻找解决方案,但似乎都不起作用。如果这还不够,我可以提供额外的信息。谢谢你的帮助。

javascript html variable-assignment
1个回答
2
投票

您无法存储对元素的

innerHTML
属性的引用,然后通过该引用设置该属性。你的例子都不应该工作:

var foo = document.getElementById('foo').innerHTML; // foo is a string
foo = "foo"; // document.getElementById('foo').innerHTML hasn't changed

console.log(foo);
console.log(document.getElementById('foo').innerHTML);
<div id="foo">Test</div>

您应该存储对元素的引用:

var foo = document.getElementById('foo'); // foo is an Element
foo.innerHTML = "foo";

console.log(foo.innerHTML);
console.log(document.getElementById('foo').innerHTML);
<div id="foo">Test</div>

© www.soinside.com 2019 - 2024. All rights reserved.