javascript-appendChild不';行不通
我在Firefox3.6上使用这个函数时遇到了一个bugjavascript-appendChild不';行不通,javascript,dom,Javascript,Dom,我在Firefox3.6上使用这个函数时遇到了一个bug function GetRefreshedResults(response) { var splitted = response.value.split("|"); var panel = document.getElementById('my-glider'); var anchors = panel.getElementsByTagName('a');
function GetRefreshedResults(response)
{
var splitted = response.value.split("|");
var panel = document.getElementById('my-glider');
var anchors = panel.getElementsByTagName('a');
for (var i=0; i<anchors.length; i++)
{
anchors[i].innerHTML=splitted[i];
}
}
我不明白为什么它不起作用。有人能帮我吗?
谢谢
编辑:
例如:
拆分的[0]包含:
"<div class="var">Visits</div><div class="percent-zero">0%</div><div class="val">0<div class="val-alt">Unique Visits: 0</div></div>"
“访问0%0唯一访问:0”
我想用新内容更新8个锚,包含在拆分的[0]、拆分的[1]…拆分的[7]
response.value.split(“|”)中
向我指示您正在以字符串形式传递响应
。appendChild仅适用于元素。您不能将子元素附加到平面字符串。拆分的[i]
是问题所在appendChild
将DOM元素追加到现有DOM元素,但它看起来像是在尝试追加字符串值。如果要使用appendChild
,请创建一个容器元素并使用innerHTML
插入字符串,或者只使用innerHTML
。我想说,不能将字符串附加为DOM元素并不是一个bug。另请参见关于appendChild的内容。response的值到底是什么样子的?@Dan--response
中有什么内容?你能做一个演示吗?使用在数组锚上循环的索引变量“i”来选择数组“splitted”中的数组元素真的可以吗?你必须提供一个splitted
的示例。我认为它包含的HTML是不正确的innerHTML
应该可以工作。@FelixKling拆分了[0]=“text”。我这样做的想法是innerHTML可以在所有浏览器上工作。我这样做是想innerHTML可以在所有浏览器上运行。@Dan Dinu You's HTML的格式有点不正确1
和2
是无效的属性。我想指出,字符串中有多个div。我没有说这是一个bug。我只是想摆脱firefox插件的锚。我马上就来试试你的方法好工作!!!我创建了一个新的div元素,并在其上使用了innerHTML。在firefox中工作!谢谢你的邀请idea@Dan,那么这是什么意思:我在firefox 3.6上有一个bug;~)
Uncaught Error: NOT_FOUND_ERR: DOM Exception 8
"<div class="var">Visits</div><div class="percent-zero">0%</div><div class="val">0<div class="val-alt">Unique Visits: 0</div></div>"