javascript - 单击按钮后如何更改文本输入的值?
问题描述
单击按钮后,我试图更改文本输入的值,但是当我运行页面时,文本输入会立即获取该值,而无需单击按钮。就像在这种情况下,文本输入显示“1”而不点击按钮!这段代码有什么问题?
{
function Button(x) {
this.x = x;
}
Button.prototype.val = document.getElementById("b").onclick = function() {
return this.x;
}
let button = new Button(1)
document.getElementById("text").value = button.val();
}
解决方案
您应该已经在内部添加了值的更改addEventListener
(在您的情况下,它会立即被调用),并且您无需费心使用原型。下面是一个完成这项工作的简单示例 -
const yourValue = 10;
document.getElementById('btn').addEventListener('click',() => document.getElementById('input').value = yourValue)
<input id='input'></input>
<button id='btn'>click me</button>
推荐阅读
- java - Maven 构建失败,找不到符号:类错误
- php - 如果没有匹配项,如何不返回任何内容?
- rest - HTTP 消息协议是否包含 SOAP、REST 等 Web 服务?
- javascript - 从文本中提取 MATLAB 函数
- r - Shiny - 通过 updateSelectInput() 在 selectInput() 中更改“选择”
- python - 是否可以让机器人基于网站发送消息?
- regex - 正则表达式允许 a-zA-Z0-9、空格、点、逗号、减号并且不允许换行
- c# - 如何从 C# 和 Raspberry Pi 中的不同线程读取或控制引脚
- r - 分子的二维结构:view.molecule.2d 错误
- c - 如何使用 malloc 方法解决打印错误?