前提
他のページからAjaxでデータを取得して、別ページに表示させたいです。
取得したいページがjavascriptのデータをもとに生成されており、
この中のscriptタグの中身を取得できずに困っています。
取得元ページ(sample.html)
<div id="content"> <h2>{[{d.title}]}</h2> <div class="box"> <p class="img"><img src="/image/sample/{[{d.id}]}"></p> <p class="date">{[{d.date}]}</p> <p class="text">{[{d.text}]}</p> </div> </div> <script type="text/javascript"> var data = {}; data.detail = [ { id:'AAA', date:'2022/01/01', text:'テキストテキスト', title:'タイトルA', type:'1'}, { id:'BBB', date:'2022/01/02', text:'テキストテキスト', title:'タイトルB', type:'1'}, { id:'CCC', date:'2022/01/03', text:'テキストテキスト', title:'タイトルC', type:'2'}; ] </script>
実現したいこと
- data.detailの配列を他ページから取得したい
- 取得の際にtypeが1のときのみ取得したい
試したこと
HTMLを取得することはできましたが、その中のdata.dtailの配列を取得できるイメージがまったく湧きません。
取得先ページ(get.html)
<div class="sample">ここに表示させたい</div> <script> $(function(){ const URL = '//' + location.host + '/sample/page/sample.html'; $.ajax({ url:URL, dataType:'html', }) .then( function (data) { console.log(data); }, function () { console.log('エラー'); } ); }); </script> >>結果:<!DOCTYPE html>...
発生している問題・エラーメッセージ
jsonで取得しようとしましたが、エラーがでました。(そもそもjsonファイルじゃないから?)
$(function(){ const URL = '//' + location.host + '/sample/page/sample.html'; $.ajax({ url:URL, dataType:'json', }) .then( function (data) { console.log(data); }, function () { console.log('エラー'); } ); }); >>結果:エラー
Ajaxを使ってscriptタグ内の配列を取得することは可能なのでしょうか...?
どなたかわかる方がいらっしゃったらおしえてください。
回答2件
あなたの回答
tips
プレビュー