所以我有这段代码:
window.onload = make_buttons ('"calc"');
function make_buttons (id) {
console.log (id);
var input = document.createElement("INPUT");
document.getElementById(id).appendChild(id.input);
for (var i = 0;i < 10; i++){
var btn = document.createElement ("BUTTON");
var t = document.createTextNode (i);
btn.appendChild(t);
document.getElementById(id).appendChild(id.btn);
}
};
基本上,我在make_buttons ()
函数中插入div元素的ID,然后它将创建我要求它为我创建的所有内容。但是由于某种原因,该方法引发了一个错误,提示我getElementById
给出了NULL值。console.log (id)
显示id为“ calc”的节目getElementByID
应在()内包含“ calc”。为什么会这样呢?
另外,当我创建了所有按钮之后,是否可以在.onclick=
之后添加一个.append.Child()
使其具有on click事件?
1)控制台始终显示字符串的引号,但这并不意味着您的字符串包含引号。您的身份证calc
不是"calc"
。
2)正如Felix所注意到的,您要分配给window.onload
函数的结果而不是函数。
代替
window.onload = make_buttons ('"calc"');
和
window.onload = function(){ make_buttons ('calc'); }
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句