JSONオブジェクトから取得した本の文字列オブジェクトがあります。この Book オブジェクトには、Title、Author、および URL という 3 つの Key 値のペアがあります。for ループを使用して各オブジェクトを読み取り、オブジェクトのタイトルをボタンとして HTML ページに配置します。しかし、ボタンがクリックされたときに、本の URL を警告したいと思います。オブジェクトを読み取ると、Books オブジェクトを作成し、後で使用するために配列にプッシュします。しかし、URLが正しくない.Click()メソッドを使用できません。理解を深めるためにコードを参照してください。:-)
for (i = 0; i < 6; i++) //I know that there is only 65 Books..jsonString.books.lenght is not working.
{
var title = jsonString.books[i].title;
var classname = title.replace(/\s/g, "");
var author = jsonString.books[i].author;
var URL = jsonString.books[i].url;
var htmlString = '<div class="' + classname + '"><input type="button" value="' + title + '"></div>';
$(htmlString).appendTo(attachPoint).click(function () {
loadBook(URL);
});
OneBook = new Book(author, title, URL);
arr.push(OneBook);
}
attachpoint は、取得した html ファイルの参照です
var attachpoint=document.querySelector('.buttonAttachPoint');
したがって、上記のコードでは、クリックした URL は常に jsonString の最後のオブジェクトになります。これは for ループで起こっています。作成したオブジェクトの配列から URL を取得できるように、onclick またはボタンのタイトルを持つ Div のクラス名を取得する方法はありますか? または、もっと簡単な方法があります。また、「jsonString.books.length」が機能しない理由を指摘できますか? 前もって感謝します.:-) すべての助けに感謝します。:-)