私はOOクイズアプリを開発しています。クイズアプリケーション自体をすべての質問などで起動するはずのクイズコンストラクタがあります。私がやりたいことは、ユーザーが自分の名前と電子メールを入力して送信ボタンをクリックしたときに、JSON文字列で名前、電子メールなどで新しい作成されたUserオブジェクトconsole.logを作成することです。私はクイズのプロトタイプメソッドclickBtn
を与え、入力が空でないかどうかをチェックし、そうでなければJSON文字列を与えます。イベントリスナーにコンストラクタのメソッドを使用する方法
このメソッドの後、ボタンにイベントリスナーを追加し、ランダム関数ではなくprototype.clickBtn
メソッドを与えました。残念ながら、私はUncaught ReferenceError: clickBtn is not defined
エラーを取得し続ける。何が問題ですか?コードスニペット:
function Quiz (User, Question) {
this.user = User;
this.question = Question;
}
Quiz.prototype.constructor = Quiz;
Quiz.prototype.clickBtn = function() {
if (theName.value == "") {
var message = document.createElement("p");
message.className = "message";
message.innerHTML = "You forgot the name and email";
var body = document.getElementsByTagName("body")[0];
body.appendChild(message);
} else {
var message = document.getElementsByClassName("message")[0]; // first one
message.parentNode.removeChild(message);
console.log(message);
var user1 = new User (theName.value, theEmail.value);
users.push(user1);
console.log("Quiz Created On: " + this.getQuizDate);
console.log(JSON.stringify(users, null, 2));
}
theName.value = "";
theEmail.value = "";
}
var btn = document.getElementById("button");
btn.addEventListener("click", clickBtn);
? – adeneo
質問が明確でない – Nirus