function grabById(id, object, newValue) {
document.getElementById(id).object = newValue;
}
<p id="p">Hi!</p>
我输入控制台:
grabById("p","innerHTML","New value for innerHTML")
控制台用undefined
没有任何反应!
答案 0 :(得分:6)
您必须使用括号表示法
function grabById(id, object, newValue) {
document.getElementById(id)[object] = newValue;
}
并且它改变了一个元素的html,它没有返回任何东西,我看不出它应该是什么原因,但根据名称可能它应该返回元素?
function grabById(id, object, newValue) {
var elem = document.getElementById(id)
elem[object] = newValue;
return elem;
}