所以我有这个代码:
var add, substract, multiply, divide;
var calculation = {
add: {
place: 2,
name: add,
calculation: function (a,b) {return a + b;},
output: function (a,b) {return a + ' + ' + b;},
buttonHTML: '+'
},
substract: {
place: 2,
name: substract,
calculation: function (a,b) {return a - b;},
output: function (a,b) {return a + ' - ' + b;},
buttonHTML: '-'
},
multiply: {
place: 1,
name: multiply,
calculation: function (a,b) {return a * b;},
output: function (a,b) {return a + ' * ' + b;},
buttonHTML: '*'
},
divide: {
place: 1,
name: divide,
calculation: function (a,b) {return a / b;},
output: function (a,b) {return a + ' / ' + b;},
buttonHTML: '/'
},
};
document.getElementById("calculator").innerHTML=('
for (var i = 0;i < 10; i++){
var btn = document.createElement ("BUTTON");
var t = document.createTextNode (i);
btn.appendChild(t);
};');
在我的 html 文件中,脚本加载到 head 元素中。在正文中,我有一个名为计算器的 div 元素。现在我想做的是使用我的循环在该 div 元素内创建按钮。但我写的似乎不起作用,我也找不到更好的解决方案。有什么想法吗?
最佳答案
创建按钮的函数对我来说看起来不错。唯一的事情是:它不是一个函数,并且不会在任何地方执行。相反,它被作为字符串分配给 innerHTML
。那是行不通的。相反,使用这个:
window.onload = function () {
for (var i = 0;i < 10; i++){
var btn = document.createElement ("BUTTON");
var t = document.createTextNode (i);
btn.appendChild(t);
document.getElementById("calculator").appendChild(btn);
}
};
关于JavaScript - 想知道如何添加 html 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21798853/