発生している問題・エラーメッセージ
for文で、liタグで複数個のHTMLを作成して代入をしているのですが
最初の項目のみリンクが適用されて、それ以降がaタグの後ろに文字列がきてしまうので
困ってます。
現状
代入後の画面のHTMLは以下のようになっている。
html
1//1つ目は正常にaタグで囲ってくれている 2<li> 3 <div class="news_contents_img_wrap"> 4 <a target="_blank" href="aaa"> 5 <img class="news_contents_img" src="https://aaa.com/desc_dgr8337/?utm_campaign=google_jobs_apply&utm_source=google_jobs_apply&utm_medium=organic"> 6 </a> 7 </div> 8 <div class="news_contents_info_wrap"> 9 <a class="news_contents_info_title" target="_blank" href="aaa"> 10 test 11 </a> 12 <p class="news_contents_info_date">2021-07-09</p> 13 </div> 14</li> 15//2つ目のliからaタグで画像や文字列を囲ってくれない 16<li> 17 <div class="news_contents_img_wrap"> 18 <a target="_blank" href="https://aaa.jp/DodaFront/View/JobSearchDetail/j_jid__3000512/-tab__jd/-fm__jobdetail"></a> 19 <img class="news_contents_img" src="aaa"> 20 </div> 21 <div class="news_contents_info_wrap"> 22 <a class="news_contents_info_title" target="_blank" href="aaa"></a>test2 23 <p class="news_contents_info_date">2021-06-17</p> 24 </div> 25</li>
理想
HTML
1<li> 2 <div class="news_contents_img_wrap"> 3 <a target="_blank" href="aaa"> 4 <img class="news_contents_img" src="bbbb"> 5 </a> 6 </div> 7 <div class="news_contents_info_wrap"> 8 <a class="news_contents_info_title" target="_blank" href="aaa"> 9 test 10 </a> 11 <p class="news_contents_info_date">2021-07-09</p> 12 </div> 13</li> 14<li> 15 <div class="news_contents_img_wrap"> 16 <a target="_blank" href="aaa"> 17 <img class="news_contents_img" src="bbbb"> 18 </a> 19 </div> 20 <div class="news_contents_info_wrap"> 21 <a class="news_contents_info_title" target="_blank" href="aaa"> 22 test2 23 </a> 24 <p class="news_contents_info_date">2021-06-17</p> 25 </div> 26</li>
該当のソースコード
HTML
1<div class="news_contents"> 2 <ul> 3 </ul> 4</div>
Jquery
1$(document).ready(function () { 2 fetch("https://aaa.microcms.io/api/v1/news?limit=100", { 3 headers: { 4 "X-API-KEY": "aaaaaaaaaaaaaaaaaaaaaa", 5 }, 6 }) 7 .then((json) => { 8 var content = json.contents; 9 for (var i = 0; i < content.length; i++) { 10 var img = content[i].img.url; 11 var title = content[i].title; 12 var date = content[i].date; 13 var link = content[i].link; 14 var news = 15 "<li><div class='news_contents_img_wrap'><a target='_blank' href=" + link + "><img class='news_contents_img' src=" + img + "></a></div>" + 16 "<div class='news_contents_info_wrap'><a class='news_contents_info_title' target='_blank' href=" + link + ">" + title + "</a>" + 17 "<p class='news_contents_info_date'>" + date + "</p></div></li>"; 18 $(".news_contents ul").append(news); 19 } 20 }) 21});
試したこと
補足情報(FW/ツールのバージョンなど)
特になし
回答2件
あなたの回答
tips
プレビュー