Javascript 如何制作向div中添加文本的可单击按钮

Javascript 如何制作向div中添加文本的可单击按钮,javascript,dom,Javascript,Dom,我想创建一个函数,根据单击的按钮将文本添加到空div中 我正在制作一个计算器作为我的javascript初学者项目之一(我知道我可以只使用输入和“button”标记,但我觉得这将更具原创性和挑战性)。我正在尝试向queryselector all nodelist中的所有元素添加事件,我觉得我的函数是正确的,我已经尽了我所能,但代码似乎不起作用,如果有任何帮助,我将不胜感激 我试图创建一种类似input的div,它反映单击列表项的值或文本 let digits=document.queryse

我想创建一个函数,根据单击的按钮将文本添加到空div中

我正在制作一个计算器作为我的javascript初学者项目之一(我知道我可以只使用输入和“button”标记,但我觉得这将更具原创性和挑战性)。我正在尝试向queryselector all nodelist中的所有元素添加事件,我觉得我的函数是正确的,我已经尽了我所能,但代码似乎不起作用,如果有任何帮助,我将不胜感激

我试图创建一种类似input的div,它反映单击列表项的值或文本

let digits=document.queryselectoral(“数字”);
让add=document.getElementById(“camper”);
for(设i=0;i

  • =
  • +
  • -
  • x
  • \
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9
  • 0
  • 清楚的
  • bkspc

事件侦听器中的
数字范围正在丢失。在事件侦听器中,您需要将
数字
绑定为
的范围,如下所示:

let digits = document.querySelectorAll("digit");
let add = document.getElementById("camper");

for (let i = 0; i < digits.length; i++) {
  digits[i].addEventListener("click", function() {
    add.innerHTML += this.innerHTML
  }).bind(digits[i]);
  digits[i].value = [i];
};
let digits=document.queryselectoral(“数字”);
让add=document.getElementById(“camper”);
for(设i=0;i
打字错误

  • 如果您想使用getElementById,但您可能希望使用
    insert
    而不是
    camper
  • 它是
    querySelectorAll(“.digit”)
    -您缺少类选择器中的点
逻辑

  • 使用
    this.innerText
    获取数字的内容
let digits=document.querySelectorAll(“.digit”);
让add=document.getElementById(“插入”);
for(设i=0;i

  • =
  • +
  • -
  • x
  • \
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9
  • 0
  • 清楚的
  • bkspc

首先为div提供露营者的ID,而不是类,然后更改文档。querySelectorAll(“数字”);记录.querySelectorAll(“.digit”);这个问题是由一个无法再复制的问题或一个简单的印刷错误引起的。虽然类似的问题可能会出现在这里,但这一问题的解决方式不太可能对未来的读者有所帮助。公认的答案是不正确的。我非常感谢你。不过,由于某种奇怪的原因,只有“1”按钮或单击“其余”按钮时div内显示的任何内容处于休眠状态。好的,删除了绑定方法,现在它工作得很好,再次感谢你,它让我疯狂,根本不需要绑定。这也可以正常工作
let digits=document.queryselectoral(“.digit”);让add=document.getElementById(“camper”);对于(设i=0;i
并且您的选择器中的
数字前面的点也丢失了