JSONの値を重複のない一覧で読み込みたい
jQuery,JavaScriptを使用してJSONを読み込み表示したいです。
JSONで管理しているカテゴリーの値の一覧を表示させたい。
カテゴリー1〜カテゴリー4の値の一覧です。
重複のある状態での一覧は読み込みできるんですが
重複項目をフィルタリングができないです。
環境はPHP使用不可環境です。
sample.json
[ { "タイトル": "この文章はダミーです。", "キャッチコピー": "この文章はダミーです。文字の大きさ、量、字間、行間等を確認するために入れています。", "タグ1": "アケビ", "タグ2": "アセロラ", "タグ3": "アボカド", "タグ4": "イチゴ" }, { "タイトル": "この文章はダミーです。", "キャッチコピー": "この文章はダミーです。文字の大きさ、量、字間、行間等を確認するために入れています。", "タグ1": "イチジク", "タグ2": "ウメ(梅)", "タグ3": "アケビ", "タグ4": "アセロラ" } ]
html JSON読み込み
<div class="categorylist"> <script type="text/javascript"> $(function () { $.getJSON("../json/sample.json", function (sample_list) { for (var i in sample_list) { var h = '<dd>' + sample_list[i].カテゴリー1 + '</dd>' + '<dd>' + sample_list[i].カテゴリー2 + '</dd>' + '<dd>' + sample_list[i].カテゴリー3 + '</dd>' + '<dd>' + sample_list[i].カテゴリー4 + '</dd></dl>'; $(".categorylist").append(h); } }); }); </script> </div>
試したこと
一度重複のある一覧で書き出し、jQueryで削除しようとも考えたのですが
動的に追加された要素へのイベント付与が
$(document).on('click'〜
でしか動かず、、、
クリックじゃなく、読み込み時に発火させたらできるのかもと思ってためしたのですが不可能でした。
試した jquery
$(document).on('click', '.categorylist', function(){ console.clear(); $(".categorylist dd").filter(function () { const t = $(this).text(); return this !== $(`.categorylist dd:contains('${t}')`).get(0); }) .remove(); });
表示したい一覧
・アケビ ・アセロラ ・アボカド ・イチゴ ・イチジク ・ウメ(梅)
回答1件
あなたの回答
tips
プレビュー