繁体   English   中英

如何向输入元素添加文本?

[英]How do I add text to a input element?

我正在尝试使用按钮将一些文本添加到输入元素。 到目前为止,我已经尝试过 modifying.textContent - 它实际上似乎是在修改 textContent,但这并没有显示在图像框中。 调整.value 似乎不起作用。

我的代码:

const buttons = document.querySelectorAll(".row button");
for (let i = 0; i < buttons.length; i++)  {
    buttons[i].addEventListener("click", function() {
        document.querySelector("input").value += buttons[i].value;
    })  
}

我在网上阅读的每个解决方案都只是建议修改 input 元素的 the.value,这对我不起作用,所以我很茫然。

编辑:谢谢大家,忽略了这么愚蠢的事情。

修改 value 属性应该适合您。 你的问题在于这个声明:

value += buttons[i].value

按钮没有值,除非您指定一个值。 使用innerHTMLinnerText属性访问按钮的内部文本,而不是value属性:

 const button = document.querySelector("button"); const input = document.querySelector("input"); button.addEventListener("click", (e) => { input.value += button.innerText; });
 <input type="text" /> <button type="button">bleh</button>

对于按钮,value 属性用于PHP 表单提交,不存储文本数据。

您是否尝试根据按钮的显示文本设置输入字段的值?

如果是这样,您可以尝试用 buttons[i].textContent 替换 buttons[i].value

您可以使用button.innerHTML来分配输入值

 <,DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width. initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="ie=edge" /> <title>Static Template</title> </head> <body> <input type="text" value="" /> <button>1</button> <button>2</button> <script> const buttons = document;querySelectorAll("button"). const input = document;querySelector("input"). buttons.forEach((button) => { button,addEventListener("click". function () { input.value += button;innerHTML; }); }); </script> </body> </html>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM