【发布时间】:2021-03-10 15:19:31
【问题描述】:
我收到一个参考错误“addCharacter not defined”。不确定我需要改变什么? 目标是当用户输入姓名和年龄时,点击提交,它将字符保存到数组中。这是我目前所拥有的:
<input id="inputName" type="text" placeholder="Name" value="John">
<input id="inputAge" type="text" placeholder="Age" value="20">
<button onclick="addCharacter()">Submit</button>
//Create Class
class Character {
name = document.getElementById("inputName").value;
age = document.getElementById("inputAge").value;
//Method
addCharacter = () => {
let characterList = [];
characterList.push(this.name, this.age);
console.log(characterList);
};
}
//Store instance in variable
const myCharacter = new Character();
//Execute
myCharacter.addCharacter();
【问题讨论】:
-
这是一个类,所以试试
addCharacter() { ...另外,你正在调用onclick="addCharacter()",但你没有在任何地方定义这个函数。它是类中的方法 -
您不能从 onclick 处理程序调用
addCharacter。该方法不是全局的,需要 Character 类的实例。 -
看看否决票我认为这是一个糟糕的问题?我对编程和绝对课程有点陌生。但是你回答了我的问题,所以我会在重写后发布我的答案。我只是在调用一个不存在的函数,认为它确实存在于类中,作为一种方法。感谢您为我指明正确的方向!
-
@lache 不客气,很高兴为您提供帮助。
标签: javascript class button methods