gpt4 book ai didi

javascript - 无法更改对象变量的 innerHTML

转载 作者:行者123 更新时间:2023-11-29 17:12:27 25 4
gpt4 key购买 nike

我有这个代码

var errorId = {
name : document.getElementById('para_name').innerHTML,
desc : document.getElementById('para_desc').innerHTML,
photo : document.getElementById('para_photo').innerHTML,
price : document.getElementById('para_price').innerHTML,
cat : document.getElementById('para_cat').innerHTML
};
errorId.name = 'Hello There';
// this works: document.getElementById('para_name').innerHTML = 'Hello';

当我尝试使用对象访问器“.”更改 innerHTML 时但是,我无法更改 innerHTML,下面的注释行在代码运行时完美运行。

最佳答案

访问 innerHTML 不会设置对元素的引用,而只是返回其 html 的字符串表示形式。所以你可以改为:

var errorId = {
name : document.getElementById('para_name'),
desc : document.getElementById('para_desc'),
...
};
errorId.name.innerHTML = 'Hello There';

或者你可能会这样做:

 var errorId = {
_name : document.getElementById('para_name'),
_desc : document.getElementById('para_desc'),
_photo : document.getElementById('para_photo'),
...
name : function(value){
if(this._name)
this._name.innerHTML = value;
}
...

};
errorId.name('Hello There');

关于javascript - 无法更改对象变量的 innerHTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20691843/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com