javascript - 当我使用 .value 获取输入值时,它返回 Undefined
问题描述
每当我使用 .value 获取文本输入的值时,然后将其显示在显示未定义的网页上。
我查看了许多修复程序,但没有一个有效。
Java 脚本
function user() {
let userNum = 1;
let userSays = document.getElementsByClassName("text_box").value;
let x = document.createElement("P");
let y = document.getElementById("chat_box");
x.setAttribute("class", "chatUser");
x.setAttribute("id", 'u'+ userNum);
x.innerHTML = "@User:" + userSays;
y.appendChild(x);
userNum += 1;
updateScroll()
}
HTML
</div>
<input class = "text_box" type="text" placeholder="This does something">
<button id = inputPrint onclick= 'user()'>User</button>
当页面上的人在输入框中键入内容,然后点击用户按钮时,它应该会显示。用户:用户输入了什么
但是它当前显示。用户:未定义
解决方案
getElementsByClassName()
返回集合。您必须使用特定的索引。
改变
let userSays = document.getElementsByClassName("text_box").value;
至
let userSays = document.getElementsByClassName("text_box")[0].value;
推荐阅读
- html - 如何设置 HTML / CSS 按钮的宽度
- java - SwingWorker 不更新长流程
- haskell - How to use Monadic binding operator on ADT or record syntax
- javascript - Use hta to change a second listbox based on the first select listbox
- powerbuilder - Write this Visual Basic code in Powerbuilder
- containers - 子容器中的 Aurelia ref 属性
- php - 如何在模型 cakephp2.10 中调用用户定义的自定义方法
- javascript - how to print a list from json document
- javascript - How can I modify the behavior of every function in an object?
- swift - 如何使用 Vapor 3 / Swift 4.1.2 创建 Heroku Worker 进程