私はJSONファイルに配列を持っています。私がしたいのは、配列から1つの項目を取り出し、ページが読み込まれたときに表示することです。 this question and answerを使用して私はここに途中で行きましたが、この答えを適応させようとすると出力htmlブロックが単純に1つを選択するのではなく配列アイテムを繰り返していました。ここでjsonから単一の項目を引き出し、htmlで表示
は、私が何を得るのスクリーンショットです: screenshot of output
私はおそらく本当の愚かな何かをやっている、と私は、誰かがこれを指摘することができると思います。
$.getJSON('recommend.json', function(data) {
var entry = data[Math.floor(Math.random()*data.length)];
$.each(data, function(entryIndex, entry) {
var html = '<div class="rec_img"><img src="./recs/' + entry['img'] + '" /></div>';
html += '<span class="rec_title">' + entry['title'] + '</span><p>';
html += '<span class="rec_author">' + entry['author'] + '</span><p>';
html += '<span class="rec_blurb">' + entry['blurb'] + '</span>';
$('#recblock').append(html).fadeIn();
});
});
ご質問は、ちょうど私に知らせて次のように 私のスクリプトです。
「を順番に配列項目を繰り返すため、出力するHTMLブロックの原因となります」。 $ .each()がそれ以外の何かをすると思いますか?単一の項目だけが必要な場合は、$ .each()を削除してください。それは1回だけ行います。また、開封済みの
タグが2つあります(
)。問題を引き起こしている可能性があります – mhodges"私はおそらく本当に馬鹿なことをしています" - 未完成の別のQ + Aから自分のコードブロックを構成しましたが、私は何も分かりませんでした。私は解決策としてこれを見ます! – Elliotpage