いつも大変お世話になっております。
jquery、javascriptに関する基礎知識がないためトンチンカンな質問になっているかもしれませんが、どうぞご容赦ください。
【やりたいこと】
・0101.html(1月1日用)、0102.html(1月2日用)…のように、一年365日分のHTMLファイルを用意する。
・上記HTMLファイル内の一部のコンテンツ(ID名はすべてのファイルで共通)を、index.htmlに読み込む。
・ただし、index.htmlでjavascriptによる日付の取得を行い、今日が11月11日であれば「1111.html」というファイルを、11月12日なら「1112.html」というファイルの中身を読みこむようにしたい。
【現在までにできていること】
・外部ファイルの特定部分(IDで指定された部分)を読み込むことはできています。
【できていないこと】
・javascriptで取得した日付に応じて、読み込むHTMlファイルを動的に変更すること
↓index.html(コンテンツを読み込むファイル)
HTML
1<head> 2 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"> 3 </script> 4 <script src="load.js"></script> 5</head> 6<body> 7 <h1>ここに外部 HTML ファイルを表示します</h1> 8 <div id="page">dst</div> 9</body>
↓external.html(読み込まれる側のファイル)
HTML
1<body> 2 <div id="contents"> 3 <h2>外部ファイル</h2> 4 <p>この文章は external.html に記載された外部 HTML の文章です</p> 5 </div> 6</body>
↓load.js
javascript
1$(function() { 2 $.ajax('external.html', { 3 timeout : 1000, // 1000 ms 4 datatype:'html' 5 }).then(function(data){ 6 var out_html = $($.parseHTML(data));//parse 7 $('#page').empty().append(out_html.filter('#contents')[0].innerHTML);//insert 8 9 //var sub_html = out_html.filter(function(index) { 10 // return $(this).attr("id") === "sub"; 11 //})[0].innerHTML;//extract 12 //var sub2_html = out_html.filter(function(index) { 13 // return $(this).attr("id") === "sub2"; 14 //})[0].innerHTML;//extract 15 //$('#page').empty().append(sub_html);//insert 16 //$('#page2').empty().append(sub2_html);//insert 17 },function(jqXHR, textStatus) { 18 if(textStatus!=="success") { 19 var txt = "<p>textStatus:"+ textStatus + "</p>" + 20 "<p>status:"+ jqXHR.status + "</p>" + 21 "<p>responseText : </p><div>" + jqXHR.responseText + 22 "</div>"; 23 $('#page').html(txt); 24 } 25 }); 26 // $('#page').load('external.html'); 27});
このコードをベースに、external.htmlではなく、日付ごとに連番を降ったhtmlファイルを日付に応じて読み込むことはできますでしょうか?
できるとすれば、具体的にどのように記述すればよいのでしょうか。
ややこしい説明で恐縮ですが、どなたかご教授頂けますと幸いです。
どうぞよろしくお願い致します。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/11/12 03:45