ボタンクリックを使用してブックのオブジェクトクラスを更新するコンストラクタ関数を使用しようとしています。私は、3つの変数(book1、book2、book3)が見つからないというエラーが出ています。理由は分かりませんが、私は非常に単純なエラー(または非常に激しいエラー)を信じています。情報をアラートで表示したいのですが、document.getElementById()を使用できますか?innerHTML =; ブラウザに変数が見つかりませんというエラーが表示されますか?
を更新しますか?<!DOCTYPE html>
<html>
<head>
<title>JavaScript Book Object</title>
</head>
<body>
<h1>Two Examples of Books</h1>
<h3>Read Available Books</h3>
<input type = 'button' value = 'To Kill a Mockingbird' onclick = 'book1.read();'/>
<input type = 'button' value = 'The Outsiders' onclick = 'book2.read();'/>
<h3>Read in your own custom book</h3>
<input type = 'button' value = 'Enter your book' onclick = 'book3.promptNewBookInfo();'/>
<input type = 'button' value = 'Your Book' onclick = 'book3.read();'/>
<script type = "text/javascript">
var book1 = new Book("To Kill a Mockingbird", "Harper Lee", "David Johnson", 281, "Social Drama");
var book2 = new Book("The Outsiders", "S. E. Hinton", "(none)", 192, "Young Adult Fiction");
var book3 = new Book("tbd", "tbd", "tbd", 0, "tbd");
function Book(ti, au, ill, pgs, gnr) {
this.title = ti;
this.author = au;
this.illustrator = ill;
this.pages = pgs;
this.genre = gnr;
this.read = funcion() {
var newBook = this.title + " by" + this.author + "and illustrated by:" + this.illustrator + " is" + this.pages + " pages long" + "and is " + this.genre;
alert(newBook);
};
this.promptNewBookInfo = function()
{
this.title = prompt("What is the title?");
this.author = prompt("Who is the nook written by?");
this.illustrator = prompt("Who is the book illustrated by?");
this.pages = parseInt(prompt("How many pages is the book?"))
this.genre = prompt("What genre is your book?");
alert (this.title + "is now ready to be read!");
}
}
</script>
</body>
</html>
「見つからない」とは「未定義」を返していますか? –