Javascript 原型和dom未提供预期结果

Javascript 原型和dom未提供预期结果,javascript,dom,prototypejs,Javascript,Dom,Prototypejs,我试图根据返回的JSON更新(替换内容)表单元格 如果我使用console.log在循环中呈现结果,我会得到正确/预期的结果。 但是,当我添加DOM引用时,什么也没有发生(对页面) 如果我在控制台中键入js来更改DOM-它可以工作。。。所以我确信语法是正确的 这是ajax调用的一部分,其内容与问题无关,因为返回(response.responseJSON)是正确的 onSuccess: function( response ) { var p = response.responseJSON; f

我试图根据返回的JSON更新(替换内容)表单元格

如果我使用console.log在循环中呈现结果,我会得到正确/预期的结果。 但是,当我添加DOM引用时,什么也没有发生(对页面)

如果我在控制台中键入js来更改DOM-它可以工作。。。所以我确信语法是正确的

这是ajax调用的一部分,其内容与问题无关,因为返回(response.responseJSON)是正确的

onSuccess: function( response ) {
var p = response.responseJSON;
for ( var key in p ) {
    if ( p.hasOwnProperty( key ) ) {
    console.log( key + " = " + p[key] ); // this works, loops correct number and shows key/value as expected
    document.getElementById[key].update('hey'); // if i add this the loop doesn't go past the first key/value - and the page element that matches the key does not change
    }
}
}
如果我在控制台中键入“document.getElementById['myKey'].update('hey');”,则'myKey'的heml元素id将更改为'hey'

我很困惑

document.getElementById(key)
用括号代替方括号

var e = document.createElement("DIV");
e.id = "test123123";
document.body.appendChild(e);
console.log(document.getElementById["test123123"]); // undefined
console.log(document.getElementById("test123123")); // actual DOM element

为什么不直接使用缩写
$(key.update('hey')?thx-我对javascript太失望了。。。我看不到一些小东西。谢谢你的帮助